如何在模型优先调用Database.SetInitializer?

时间:2011-11-21 00:35:57

标签: .net entity-framework-4.1 generator edmx ef-model-first

我使用“DbContext Entity Generator”作为生成项在edm designer(VS10)中创建了一个模型。

在生成的DbContext子类中,它覆盖了构造函数,因此我无法在其他分部类中使用它:

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

使用模型优先初始化数据库的正确方法是什么?

2 个答案:

答案 0 :(得分:3)

您可以更改用于生成DbContxt类的T4模板。然后,您可以添加要用于初始化上下文的部分修饰符或方法。

答案 1 :(得分:3)

首先使用模型时没有自动数据库初始化。您必须从模型生成SQL脚本(使用EDMX设计器中的上下文菜单并选择从模型生成数据库)并在现有数据库上自行执行。

SetInitializer仅适用于代码。