EF CTP5 - наследование контекста между несколькими сборками - PullRequest
1 голос
/ 10 июня 2011

У меня есть две сборки, каждая с моделями и контекстом модели.

Первый контекст модели сборки получен из DbContext.

Второй контекст модели сборки получен из первого контекста модели сборки.

Это работает, за исключением того, что генерирование базы данных завершается неудачно, поскольку модели первой сборки не учитываются при создании базы данных.

Есть ли способ обеспечить правильное рассмотрение моделей первой сборки при создании базы данных?

1 Ответ

1 голос
/ 09 октября 2011

Я решил это, загрузив метаданные другой сборки в базовое пространство метаданных ObjectContext внутри конструктора контекста:

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

    }
}
...