Ich habe 3 Tische,
1) Kunde (ID, Name, bla bla)
2) Kundengruppen (GroupId, GroupName)
3) CustomerInGroups (CustomerId, GroupId)
%Vor%Wie füge ich einen Datensatz in CustomerInGroups hinzu? EntityFramework generiert keine Entitäten für solche Viele-zu-Viele-Zuordnungstabellen
Bearbeiten:
Beide ID-Spalten in Kunden- und Kundengruppen sind auf automatisches Inkrement gesetzt.
Also in meiner CustomersGroup-Tabelle habe ich
%Vor%Ich habe versucht, dies als eines der vorgeschlagenen Poster zu tun:
%Vor%Wenn ich dies jedoch getan habe, anstatt einen Datensatz in der Mapping-Tabelle wie folgt zu erstellen:
%Vor%Was ich bekam, war
%Vor%Es hat tatsächlich einen anderen Eintrag in meiner CustomerGroups-Tabelle erstellt, was ich nicht möchte
Fliegen ein wenig blind, da Sie nicht die Eigenschaften entity
enthalten haben. Aber Sie sollten eine Eigenschaft für die Beziehung zu CustomerGroups
haben. Setzen Sie diese Eigenschaft nur auf die Gruppen, mit denen Sie in Beziehung stehen möchten. Beispielsweise würde dies einen neuen Gruppennamen "foo bar" erstellen und die Entität mit dieser Gruppe verknüpfen.
Wenn die Beziehung korrekt eingerichtet ist, fügt EF automatisch einen Datensatz in CustomerGroups
ein und fügt eine Beziehung in die Tabelle CustomerInGroups
ein.
BEARBEITEN:
Wenn Sie versuchen, einem neuen Kunden ein vorhandenes CustomerGroup
hinzuzufügen. Sie möchten das CustomerGroup
zuerst aus der Datenbank abrufen und es dann der Entität Kunde hinzufügen, die Sie einfügen.
Wenn Sie versuchen, einen bestehenden Kunden einer _existierenden Gruppe zuzuweisen und davon auszugehen, dass das CustomerGroup-Objekt eine ICollection verfügbar macht, gehen Sie folgendermaßen vor:
%Vor%Die Methode Find () ist die Methode des Entity Framework Code First (DbContext), die nach der ID sucht. Ich kann mich nicht an die Spitze meines Kopfes erinnern die "richtige" ObjectContext Art und Weise es zu tun, aber aber. Single (g = & gt; g.Id == 2) würde auch funktionieren.
Idealerweise geben Sie uns eine bessere Vorstellung davon, wie Ihre Entitäten zugeordnet sind, damit wir wissen, wie Sie Ihre Entitäten in Beziehung setzen.
Tags und Links .net c# entity-framework many-to-many