Pregunta

Cuando tengo una entidad que contiene una referencia a una entidad singular que puedo crear una EntityKey y asignar ese valor a la propiedad EntityNameReference.Value. Funciona perfectamente y como un encanto.

Si tengo una entidad que contiene una referencia a varias entidades que no puede tener éxito en hacer lo mismo. Supongamos que una llamada de solicitud entidad que tiene una propiedad que contiene referencias a los módulos (lo que la aplicación tiene una propiedad llamada Lista de Módulos).

¿Cómo puedo conectar mediante programación claves de entidad de ese tipo de propiedad?

He intentado algo como esto, sin ningún éxito:

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

Muchas gracias por su ayuda. Marco

¿Fue útil?

Solución

¿El módulo tiene propiedad de navegación de aplicaciones? Debería.

Me gustaría escribir algo como:

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();
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top