我目前使用实体框架在asp.net中创建一个网站,我想知道什么是实例化Entity Container
的好方法?实体框架良好实践
目前,我这样做(其中MYDB是我的实体框架容器):
public partial class User : System.Web.UI.MasterPage
{
private myDb ctx;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack) ctx = new myDb();
}
}
而且我使用的许多功能的上下文。
但是,在很多网站上,我看到了这种方式来处理:
using (var ctx = new myDb())
{
}
但如果使用第二个我已经把它在我的课的许多功能。然后重新实例化Entity Container
。
有什么更好?你能否向我解释为什么它更好,如果两者都好,为什么在不同情况下我必须使用一个。
就你而言,你可以调用'ctx。Dispose();'在'Page_Unload'事件中,并获得与使用(var ctx = new myDb()){}'相同的效果。 – 2013-03-07 08:45:08
感谢您的回答。什么是使用方法的好例子? – 2013-03-07 08:46:58
'using'在实现'IDisposable'的类上工作。当using块完成时,调用'.Dispose()'方法。并且你释放一个对象来释放资源并释放内存。对于示例中的数据库对象,这也关闭了与数据库的连接。 – 2013-03-07 08:50:05