Partager via


IndexAttribute, classe

[Cette page concerne Entity Framework version 6. La dernière version est disponible sous le nom de package 'Entity Framework' NuGet. Pour plus d'informations sur Entity Framework, consultez msdn.com/data/ef.]

Représente un attribut placé sur une propriété pour indiquer que la colonne de base de données à laquelle la propriété est mappée comporte un index.

Hiérarchie d'héritage

System.Object
  System.Attribute
    System.ComponentModel.DataAnnotations.Schema.IndexAttribute

Espace de noms :  System.ComponentModel.DataAnnotations.Schema
Assembly :  EntityFramework (dans EntityFramework.dll)

Syntaxe

'Déclaration
<AttributeUsageAttribute(AttributeTargets.Property, AllowMultiple := True)> _
<SuppressMessageAttribute("Microsoft.Design", "CA1019:DefineAccessorsForAttributeArguments")> _
<SuppressMessageAttribute("Microsoft.Performance", "CA1813:AvoidUnsealedAttributes")> _
Public Class IndexAttribute _
    Inherits Attribute
'Utilisation
Dim instance As IndexAttribute
[AttributeUsageAttribute(AttributeTargets.Property, AllowMultiple = true)]
[SuppressMessageAttribute("Microsoft.Design", "CA1019:DefineAccessorsForAttributeArguments")]
[SuppressMessageAttribute("Microsoft.Performance", "CA1813:AvoidUnsealedAttributes")]
public class IndexAttribute : Attribute
[AttributeUsageAttribute(AttributeTargets::Property, AllowMultiple = true)]
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1019:DefineAccessorsForAttributeArguments")]
[SuppressMessageAttribute(L"Microsoft.Performance", L"CA1813:AvoidUnsealedAttributes")]
public ref class IndexAttribute : public Attribute
[<AttributeUsageAttribute(AttributeTargets.Property, AllowMultiple = true)>]
[<SuppressMessageAttribute("Microsoft.Design", "CA1019:DefineAccessorsForAttributeArguments")>]
[<SuppressMessageAttribute("Microsoft.Performance", "CA1813:AvoidUnsealedAttributes")>]
type IndexAttribute =  
    class 
        inherit Attribute 
    end
public class IndexAttribute extends Attribute

Le type IndexAttribute expose les membres suivants.

Constructeurs

  Nom Description
Méthode publique IndexAttribute() Initialise une nouvelle instance de IndexAttribute pour un index qui sera nommé par convention et pour lequel aucun ordre de colonnes, aucun clustering ou aucune unicité n'est spécifié.
Méthode publique IndexAttribute(String) Initialise une nouvelle instance de IndexAttribute pour un index portant le nom spécifié et pour lequel aucun ordre de colonnes, aucun clustering ou aucune unicité n'est spécifié.
Méthode publique IndexAttribute(String, Int32) Initialise une nouvelle instance de IndexAttribute pour un index avec les nom et ordre de colonnes indiqués, mais pour lequel aucun clustering ni aucune unicité n'est spécifié.

Top

Propriétés

  Nom Description
Propriété publique IsClustered Obtient ou définit une valeur permettant d'indiquer si l'index définit un index cluster.
Propriété publique IsClusteredConfigured Détermine ou définit si IsClustered a été défini avec une valeur.
Propriété publique IsUnique Obtient ou définit une valeur permettant d'indiquer si un index unique doit être défini.
Propriété publique IsUniqueConfigured Détermine ou définit si IsUnique a été défini avec une valeur.
Propriété publique Name Obtient ou définit le nom de l'index.
Propriété publique Order Obtient ou définit un nombre qui détermine l'ordre des colonnes pour les index multicolonnes.La valeur est -1 si aucun ordre de colonnes n'a été spécifié.
Propriété publique TypeId Obtient ou définit un ID différent pour chaque instance d'objet de sorte que les descripteurs de type ne tenteront pas de combiner toutes les instances d'IndexAttribute en une seule instance. (Substitue Attribute.TypeId.)

Top

Méthodes

  Nom Description
Méthode publique Equals(Object) Détermine si cet attribut spécifie les mêmes nom et configuration que l'attribut donné. (Substitue Attribute.Equals(Object).)
Méthode protégée Equals(IndexAttribute) Détermine si cet attribut spécifie les mêmes nom et configuration que l'attribut donné.
Méthode protégée Finalize (Hérité de Object.)
Méthode publique GetHashCode Retourne le code de hachage de cette instance. (Substitue Attribute.GetHashCode().)
Méthode publique GetType (Hérité de Object.)
Méthode publique IsDefaultAttribute (Hérité de Attribute.)
Méthode publique Match (Hérité de Attribute.)
Méthode protégée MemberwiseClone (Hérité de Object.)
Méthode publique ToString Retourne la représentation sous forme de chaîne de cette instance. (Substitue Object.ToString().)

Top

Implémentations d'interface explicite

  Nom Description
Implémentation d'interface expliciteMéthode privée _Attribute.GetIDsOfNames (Hérité de Attribute.)
Implémentation d'interface expliciteMéthode privée _Attribute.GetTypeInfo (Hérité de Attribute.)
Implémentation d'interface expliciteMéthode privée _Attribute.GetTypeInfoCount (Hérité de Attribute.)
Implémentation d'interface expliciteMéthode privée _Attribute.Invoke (Hérité de Attribute.)

Top

Notes

Cet attribut est utilisé par les migrations Entity Framework pour créer des index sur les colonnes de base de données mappées. Les index multicolonnes sont créés en utilisant le même nom d'index dans plusieurs attributs. Les informations figurant dans ces attributs sont alors fusionnées pour spécifier l'index réel de base de données.

Sécurité des threads

Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Tous les membres de l'instance ne sont pas garantis comme étant thread-safe.

Voir aussi

Référence

Espace de noms System.ComponentModel.DataAnnotations.Schema