【发布时间】:2011-11-25 14:06:45
【问题描述】:
我有一个应用程序首先使用实体框架代码。我的设置是我有一个所有其他服务都继承自的核心服务。核心服务包含以下代码:
public static DatabaseContext db = new DatabaseContext();
public CoreService()
{
db.Database.Initialize(force: false);
}
然后,另一个类将从 CoreService 继承,当它需要查询数据库时,将运行一些代码,例如:
db.Products.Where(blah => blah.IsEnabled);
但是,关于哪个最好,我似乎得到了相互矛盾的故事。
有些人建议不要做我正在做的事情。
其他人说你应该为每个类定义上下文(而不是使用基类来实例化它)
其他人说,对于每个数据库调用,我都应该将它包装在 using 块中。我从未在 Microsoft 的任何示例中看到过这一点。
谁能澄清一下?
我目前正处于可以重构并且速度非常快的地步,所以如果可能的话,我想要一些一般性的建议。
【问题讨论】: