Entity-Datenmodell, eindeutiger Index

8

In meinem Entity-Datenmodell habe ich eine Entität mit einer Eigenschaft als Primärschlüssel und einer anderen Eigenschaft, die ebenfalls eindeutige Werte hat. Daher möchte ich einen eindeutigen Index für diese andere Eigenschaft erstellen. Die Situation ist der Entität Person mit den Feldern PersonID und PersonSSN sehr ähnlich.

Gibt es eine Möglichkeit, im Designer oder in der edmx-Datei anzugeben, dass ein solcher Index auf einer Eigenschaft erstellt werden soll, wenn eine Datenbank aus dem Modell generiert wird?

    
Ivan Gerken 22.10.2010, 13:57
quelle

1 Antwort

14

Leider unterstützt EF4 die UNIQUE-Einschränkungen nicht. Die bestimmte Eigenschaft kann als EntityKey markiert werden. EF verfügt jedoch über kein Attribut, um eine Spalte in der EDMX-Datei als eindeutig zu kennzeichnen.
Wenn Sie eine eindeutige Integritätsregel in Ihrem Datenspeicher erstellen und Ihr Modell aus der Datenbank aktualisieren (in einem typischen Datenbankansatz), wird diese Eindeutigkeitsbedingung vom EDM nicht erkannt.
Wenn Sie das Feature "Model First" von EF4 zum Generieren der DDL verwenden möchten, müssen Sie die UNIQUE-Einschränkungen für bestimmte Spalten manuell in der generierten DDL hinzufügen.

    
Morteza Manavi 22.10.2010, 14:40
quelle