Как вызвать Database.SetInitializer для модели в первую очередь? - PullRequest
4 голосов
/ 21 ноября 2011

Я создал модель в конструкторе EDM (VS10), используя "DbContext Entity Generator" в качестве элемента генерации.

В созданном подклассе DbContext он переопределил конструктор, поэтому я не могу использовать его в другом частичном классе:

public EntitiesContainer()
    : base("name=EntitiesContainer")
{
    this.Configuration.LazyLoadingEnabled = false;
}

Как правильно инициализировать базу данных с моделью-первым?

Ответы [ 2 ]

3 голосов
/ 21 ноября 2011

Нет автоматической инициализации базы данных при первом использовании модели. Вы должны сгенерировать сценарий SQL из модели (используйте контекстное меню в конструкторе EDMX и выберите «Создать базу данных из модели») и выполнить его самостоятельно в существующей базе данных.

SetInitializer только для первого кода.

3 голосов
/ 21 ноября 2011

Вы можете изменить шаблон T4, который используется для генерации класса DbContxt.Затем вы можете добавить частичные модификаторы или методы, которые вы хотите использовать для инициализации вашего контекста.

...