Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

789
Vistas
DataAnnotation [Index(IsUnique = true)] on a column throws error Attribute 'Index' is not valid on this declaration type

This is my first time exploring DataAnnotations (I was hoping to use this over fluent)...and I don't understand why the following code throws a compile time error:

CS0592 - Attribute 'Index' is not valid on this declaration type. It is only valid on 'class' declaration

public class Holiday
{
    [Key]
    public int Id { get; set; }

    [Required]
    [Index(IsUnique = true)]
    public DateTime? Date { get; set; }

    public string Name { get; set; }
}

My goal is to make the Date column UNIQUE...and I thought using [Index(IsUnique = true)] on a column is the correct way to make it unique...but it is not allowing me to use the Index attribute on columns, only on classes...

Please teach me how to achieve this? 🙏🙏🙏

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Well, the Index attribute is the data annotation equivalent of the HasIndex fluent API, and similar to the API, it's meant to be applied at the entity (class) level, providing the properties that make up the index, in order , plus other information such as the index. name, if it is unique, etc.

So in your case you would need something like this

 [Index(nameof(Holiday.Date), IsUnique = true)] public class Holiday { // ... }

which corresponds to the following fluent configuration

 modelBuilder.Entity<Holiday>() .HasIndex(e => e.Date) .IsUnique();

Actually all of this is well explained with examples in the Indexes section of the official EF Core documentation.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda