Freigeben über


IndexAttribute-Klasse

[Diese Seite bezieht sich auf Entity Framework Version 6. Die neueste Version ist als 'Entity Framework' NuGet-Paket verfügbar. Weitere Informationen zu Entity Framework finden Sie unter msdn.com/data/ef.]

Attribut, das in einer Eigenschaft abgelegt wird, um anzugeben, dass die Datenbankspalte, der die Eigenschaft zugeordnet ist, über einen Index verfügt.

Vererbungshierarchie

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

Namespace:  System.ComponentModel.DataAnnotations.Schema
Assembly:  EntityFramework (in EntityFramework.dll)

Syntax

'Declaration
<AttributeUsageAttribute(AttributeTargets.Property, AllowMultiple := True)> _
<SuppressMessageAttribute("Microsoft.Design", "CA1019:DefineAccessorsForAttributeArguments")> _
<SuppressMessageAttribute("Microsoft.Performance", "CA1813:AvoidUnsealedAttributes")> _
Public Class IndexAttribute _
    Inherits Attribute
'Usage
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

Der IndexAttribute-Typ macht die folgenden Member verfügbar.

Konstruktoren

  Name Beschreibung
Öffentliche Methode IndexAttribute() Erstellt eine neue IndexAttribute-Instanz für einen Index, der gemäß der Konvention benannt wird, und für den keine Spaltenreihenfolge, Gruppierung oder Eindeutigkeit angegeben ist.
Öffentliche Methode IndexAttribute(String) Erstellt eine neue IndexAttribute-Instanz für einen Index mit dem angegebenen Namen, für den keine Spaltenreihenfolge, Gruppierung oder Eindeutigkeit angegeben ist.
Öffentliche Methode IndexAttribute(String, Int32) Erstellt eine neue IndexAttribute-Instanz für einen Index mit dem angegebenen Namen, für den eine Spaltenreihenfolge, aber keine Gruppierung oder Eindeutigkeit angegeben ist.

Oben

Eigenschaften

  Name Beschreibung
Öffentliche Eigenschaft IsClustered Ruft einen Wert ab, um anzugeben, ob der Index einen gruppierten Index definiert, oder legt den Wert fest.
Öffentliche Eigenschaft IsClusteredConfigured Ruft ab oder legt fest, ob IsClustered auf einen Wert festgelegt wurde.
Öffentliche Eigenschaft IsUnique Ruft einen Wert ab, um anzugeben, ob ein eindeutiger Index definiert werden soll, oder legt den Wert fest.
Öffentliche Eigenschaft IsUniqueConfigured Ruft ab oder legt fest, ob IsUnique auf einen Wert festgelegt wurde.
Öffentliche Eigenschaft Name Ruft den Indexnamen ab oder legt diesen fest.
Öffentliche Eigenschaft Order Ruft eine Zahl ab, die die Spaltenreihenfolge für Indizes mit mehreren Spalten festlegt, oder legt diese Zahl fest.Dies wird -1 sein, wenn keine Spaltenreihenfolge angegeben wurde.
Öffentliche Eigenschaft TypeId Ruft eine für jede Projektinstanz verschiedene ID ab, damit Typdeskriptoren nicht versuchen, alle IndexAttribute-Instanzen in einer einzigen Instanz zu kombinieren; oder legt eine solche ID fest. (Überschreibt Attribute.TypeId.)

Oben

Methoden

  Name Beschreibung
Öffentliche Methode Equals(Object) Bestimmt, ob dieses Attribut den gleichen Namen und die gleiche Konfiguration angibt, wie das angegebene Attribut. (Überschreibt Attribute.Equals(Object).)
Geschützte Methode Equals(IndexAttribute) Bestimmt, ob dieses Attribut den gleichen Namen und die gleiche Konfiguration angibt, wie das angegebene Attribut.
Geschützte Methode Finalize (Von Object geerbt.)
Öffentliche Methode GetHashCode Gibt den Hashcode für diese Instanz zurück. (Überschreibt Attribute.GetHashCode().)
Öffentliche Methode GetType (Von Object geerbt.)
Öffentliche Methode IsDefaultAttribute (Von Attribute geerbt.)
Öffentliche Methode Match (Von Attribute geerbt.)
Geschützte Methode MemberwiseClone (Von Object geerbt.)
Öffentliche Methode ToString Gibt die Zeichenfolgendarstellung für diese Instanz zurück. (Überschreibt Object.ToString().)

Oben

Explizite Schnittstellen implementierungen

  Name Beschreibung
Explizite SchnittstellenimplementierungPrivate Methode _Attribute.GetIDsOfNames (Von Attribute geerbt.)
Explizite SchnittstellenimplementierungPrivate Methode _Attribute.GetTypeInfo (Von Attribute geerbt.)
Explizite SchnittstellenimplementierungPrivate Methode _Attribute.GetTypeInfoCount (Von Attribute geerbt.)
Explizite SchnittstellenimplementierungPrivate Methode _Attribute.Invoke (Von Attribute geerbt.)

Oben

Hinweise

Dieses Attribut wird von Entity Framework-Migrationen verwendet, um Indizes der zugeordneten Datenbankspalten zu erstellen. Indizes für mehrere Spalten werden erstellt, indem der gleiche Indexname in mehreren Attributen verwendet wird. Die Informationen in diesen Attributen werden dann zusammengeführt, um den tatsächlichen Datenbankindex anzugeben.

Threadsicherheit

Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Siehe auch

Verweis

System.ComponentModel.DataAnnotations.Schema-Namespace