У меня есть 3 уровня приложений.
В слое Persistance просто перетащите файл Entities.edmx для перетаскивания.
В слое Presentation:
<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>
И представление сетки, которое подключается к этому источнику данных объекта.
В моем слое логики бизнеса, когда я использую его следующим образом:
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
"?