Tengo una subclase en un ensamblaje diferente a su clase base. El padre es una clase POCO utilizada para EF Code First.Entity Framework Code First y Multiple Assemblies
Cuando intento agregar una instancia de la clase heredada a la base de datos consigo InvalidOperationException:"mapeo de objetos no se pudo encontrar para el tipo de identidad 'Foo.Bar.MyInheritedClass'".
Funciona bien si la subclase está en el mismo ensamblaje que la clase base.
En EF regular el solution seems to be una llamada al ObjectContext.MetadataWorkspace.LoadFromAssembly (assembly). Pero no puedo entender cómo esto se relaciona con Code First.
Algún consejo?
Estoy usando Entity Framework 4.1 RC.
¿Por qué todavía no puedes llamar a esa función? No he comprobado realmente, pero basado en una búsqueda rápida usted debe poder acceder al 'MetadataWorkspace' de su' DbContext' usando 'dbContext.MetadatWorkspace'. ¿Eso no funciona? –
Sí, puede convertir DbContext en IObjectContextAdapter y recuperar su ObjectContext subyacente (Ver: http://weblogs.asp.net/jgalloway/archive/2011/01/21/fix-wcf-data-service-with-entity-framework -code-first-dbcontext-doesn-t-accept-updates.aspx). –
Eso me permitió probar MetadataWorkspace.LoadFromAssembly() pero no solucionó mi problema :( –