Dieses Ding macht mich verrückt und der Fehler ist für mich ziemlich bedeutungslos:
Das EntitySet 'TableB' kann nicht aktualisiert werden, da es eine DefiningQuery enthält und kein Element im Element vorhanden ist, das den aktuellen Vorgang unterstützt.
Meine Tische sind so aufgestellt:
Tabelle A. int idA (Identität, Primärschlüssel) ... Tabelle B. int idA (FK für TableA.idA) int val
Tabelle B hat keinen definierten Primärschlüssel im SQL Server. Das Entity Framework hat die Tabelle und die Zuordnung importiert und beide Felder als Schlüssel festgelegt. Aber es wird diesen Fehler ausgeben, wenn ich versuche, eine Einfügung in die Tabelle vorzunehmen!
Was ist los mit dir??
Bearbeiten: Wie von Alex vorgeschlagen, war die Lösung folgende:
- Klicken Sie mit der rechten Maustaste auf die edmx-Datei und wählen Sie Öffnen mit, XML-Editor
- Suchen Sie die Entität im Element edmx: StorageModels
- Entfernen Sie die DefiningQuery vollständig
- Benennen Sie den Speicher um: Schema = "dbo" in Schema = "dbo" (andernfalls generiert der Code einen Fehler, der besagt, dass der Name ungültig ist)
- Entfernen Sie die Eigenschaft store: Name
Ich habe den Schlüssel so belassen, wie er war, da es für mich in Ordnung war, dass beide Spalten Teil des Schlüssels sind.