Question

J'ai deux ensembles, chacun des modèles et un contexte de modèle.

Le premier contexte du modèle d'assemblage est dérivé d'DbContext.

Le deuxième contexte de modèle d'assemblage est dérivé du premier contexte du modèle d'assemblage.

Cela fonctionne, à l'exception de la génération de base de données échoue parce que les premiers modèles d'assemblage ne sont pas considérés lors de la génération de la base de données.

Y at-il un moyen de faire en sorte que les premiers modèles d'assemblage sont dûment pris en compte lors de la génération de base de données?

Était-ce utile?

La solution

Je résolu ce problème en chargeant les métadonnées de l'autre ensemble dans le MetadataWorkspace de ObjectContext sous-jacente dans le constructeur du contexte:

namespace MyNamespace{
    public class MyContext : DbContext {

        public ObjectContext ObjectContext { 
            get { return ((IObjectContextAdapter)this).ObjectContext; } 
        }

        public MyContext() : base() {
            this.ObjectContext.MetadataWorkspace.LoadFromAssembly(
               System.Reflection.Assembly.GetAssembly(typeof(MyNamespace.MyContext))
            );
        }

    }
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top