In meinem AspNet MVC 3 Projekt, wenn ich versuche, eine Entity zu scaften, die eine One to Zero oder One Beziehung zu einer anderen Entität hat, bekomme ich "Ein Item mit demselben Index wurde bereits hinzugefügt" -Fehler .
Dies geschieht im Wesentlichen, wenn der Primärschlüssel der verknüpften Tabelle ebenfalls ein Fremdschlüssel ist.
Im Moment ist mein Workaround
Fügen Sie der zugehörigen Tabelle eine ID-Spalte hinzu und machen Sie sie zum Primärschlüssel
Fügen Sie der Fremdschlüsselspalte einen eindeutigen Schlüssel hinzu.
Das Problem dabei ist, dass EF eine ICollection-Navigationseigenschaft für die verknüpfte Entität anstatt nur einer Eigenschaft des zugehörigen Entitätstyps generiert (die ich im Fall von nullbezogenen Entitäten auf null setzen kann)
Ist das ein bekannter Fehler?
Mache ich etwas falsch?
Gibt es eine bessere Lösung, um die ICollection-Navigationseigenschaft zu entfernen?
Versuchen Sie, das Attribut [Key]
für den beabsichtigten Primärschlüssel zu verwenden. Möglicherweise müssen Sie den Namespace System.ComponentModel.DataAnnotations
Überprüfen Sie auch die Dokumentation über die vollständige Implementierung dieses Namensraums.
Tags und Links asp.net-mvc-3 .net c# entity-framework asp.net-mvc-scaffolding