我有 3 层应用程序。
在 Persistance 层中,只是拖放 Entities.edmx 文件。
在表示层:
<asp:ObjectDataSource ID="ObjectDataSource_Tva" runat="server"
DeleteMethod="del_Tva" InsertMethod="Inst_Tva"
SelectMethod="Get_All_Tva"
TypeName="FaExped_BackEnd_WebApp_Business.Le_T.LeTVA_Entite_BL"
UpdateMethod="Updt_Tva">
<DeleteParameters>
<asp:Parameter Name="Id" Type="Int32" />
</DeleteParameters>
<InsertParameters>
<asp:Parameter Name="Id" Type="Int32" />
<asp:Parameter Name="Libelle" Type="String" />
</InsertParameters>
<UpdateParameters>
<asp:Parameter Name="Id" Type="Int32" />
<asp:Parameter Name="Libelle" Type="String" />
</UpdateParameters>
</asp:ObjectDataSource>
还有一个连接到这个objectdatasource的gridview。
在我的业务逻辑层中,当我像这样使用它时:
public IEnumerable<T_TVA> Get_All_Tva()
{
FaExpedEntities oEntite_T = new FaExpedEntities();
var query = from o in oEntite_T.T_TVA select o;
IEnumerable<T_TVA> LesTva = query;
return LesTva;
}
它有效,但是当我这样使用时:
public IEnumerable<T_TVA> Get_All_Tva()
{
using (FaExpedEntities oEntite_T = new FaExpedEntities())
{
var query = from o in oEntite_T.T_TVA select o;
IEnumerable<T_TVA> LesTva = query;
return LesTva;
}
}
这没用。它表示 的实例ObjectContext
已被删除,不能用于需要连接的操作。
为什么?
using
使用“ ”语法失败和不使用“ ”有什么区别using
?
有或没有“”,哪种方法更好using
?