我有这段代码。如何做清理?
创建上下文的新实例的基类。
public class Base
{
private Entities context;
public Base()
{
context = new Entities();
}
}
而且比从这个类继承的类。
public class SomeService : Base
{
public Gallery Get(int id)
{
return context.GallerySet.FirstOrDefault(g => g.id == id);
}
}
问题是,如何照顾配置上下文对象?我正在考虑在基类中的析构函数,我只需要调用上下文对象的dispose方法。
~Base()
{
context.Dispose();
}
会这样吗?或者还有其他方式来照顾上下文对象吗?
这有一定道理,你说怎么样IDisposable.But与上面的方法,我想摆脱使用在这样 每一个方法调用使用的(实体上下文=新的实体()){ .... } SomeService类会有很多使用上下文对象的短方法。在每种方法中重复使用方法都是针对SOLID principe。 – user137348 2009-11-20 10:29:23
尽管你仍然需要使用语句。例如,您不需要每个SomeService方法中的using语句 - 上下文可以传递到方法中。 – 2009-11-20 10:40:48
同意@Jon。看看[这篇文章] [1]。 请注意,即使该文章按照通用设计模式(一次性模式) [1]进行分类,标题为实现完成并处置以清理**非托管资源**:http://msdn.microsoft.com/ en-us/library/b1yfkh5e%28VS.71%29.aspx – 2009-11-20 11:18:53