我目前使用實體框架在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