0

単一のエンティティへの参照を保持するエンティティがある場合、EntityKeyを作成し、その値をEntityNameReference.Valueプロパティに割り当てることができます。それは完璧に機能し、魅力のようです。

複数のエンティティへの参照を保持するエンティティがある場合、同じことを行うことはできません。Modulesへの参照を含むプロパティを持つApplicationというエンティティを想定します(したがって、ApplicationにはModulesというListプロパティがあります)。

エンティティキーをその種類のプロパティにプログラムでアタッチするにはどうすればよいですか?

私はこのようなことを試しましたが、成功しませんでした。

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);

どうもありがとうございました。マルコ

4

1 に答える 1

0

モジュールにはアプリケーションナビゲーションプロパティがありますか?そうすべき。

私は次のようなものを書きます:

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();
于 2009-11-06T20:32:11.273 に答える