来自静态构造函数的Database.SetInitializer

时间:2011-06-11 05:22:11

标签: .net entity-framework-4.1

我想在一个程序集中隔离所有EF 4.1实现。 Database.SetInitializer调用通常放在Web应用程序的Application_Start方法中。从我的DbContext的静态构造函数调用SetInitializer是否安全?它似乎工作正常,但我只是想确保这种方法是安全的。静态构造函数保证每个应用程序域只执行一次,因此至少没有线程问题。还有什么我可能需要担心的吗?

感谢您的任何见解。

1 个答案:

答案 0 :(得分:3)

是的,我们在自己的系统中做同样的事情。我们有一个.Model程序集,它封装了我们所有的EF功能--DbContext,ContextFactory,配置等都在那里设置。初始化器的设置并不重要,只要它首先完成。