Frage

Wenn ich ein Unternehmen haben, die einen Verweis auf eine einzelne Einheit hält ich eine EntityKey erstellen und diesen Wert an die EntityNameReference.Value Eigenschaft zuweisen. Es funktioniert perfekt und wie ein Charme.

Wenn ich eine Entität, die einen Verweis auf mehrere Entitäten hält ich nicht in die gleiche Sache gelingen kann. Angenommen, ein Unternehmen namens Anwendung, die eine Eigenschaft hat, die Verweise auf Module enthält (so Anwendung hat eine Liste Eigenschaft namens Module).

Wie kann ich programmatisch Entitätsschlüsseln auf diese Art von Eigentum anhängen?

Ich habe versucht, so etwas wie dies, ohne Erfolg:

foreach(int idModule in selectedModules)
{
Module m = new Module();
m.EntityKey = new EntityKey("myModel.ModuleSet", "idModule", idModule);
ctx.Attach(m); //Here I have an exception
app.Modules.Add(m);

Vielen Dank für Ihre Hilfe. Marco

War es hilfreich?

Lösung

Does Module haben Anwendung Navigationseigenschaft? Es sollte.

Ich würde schreiben so etwas wie:

foreach(int idModule in selectedModules)
{
    Module m = new Module();
    m.EntityKey = new EntityKey("myModel.ModuleSet", "idModule", idModule);
    m.Application = app;
    app.Modules.Add(m);
}
ctx.SaveChanges();
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top