我正在使用Entity框架開始使用它。以下是我安排我的項目與EF交互的方式。我只想知道我是否正朝着正確的方向前進。請建議更好的方法。請忽略UI之類的架構,不應該引用DAL。這只是「瞭解」項目。 :)這是與實體框架交互的正確方法嗎?
這就是我在做的:
DAL的一個項目。這裏所有的數據庫操作都將使用EF。
模型 - 業務實體類。而不是返回EF的Order對象,我將返回Model的實體類。 (有沒有辦法將我的商業實體映射到EF實體?)
UI - 這將調用DAL並完成任務。
項目1 - DAL
該項目還包含我的edmx文件。
public class DALRepository
{
OrderEntities orderEntitiesContext = new OrderEntities();
public IQueryable<Model.OrderModel> GetOrders()
{
return orderEntitiesContext.Orders.Select(o => new Model.OrderModel { OrderName = o.OrderName, Id = o.OrderID });
}
}
項目2 - 型號
public class OrderModel
{
public long Id { get; set; }
public string OrderName { get; set; }
}
項目3 - UI
public partial class OrderList : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
DAL.DALRepository dal = new DAL.DALRepository();
GridView1.DataSource = dal.GetOrders();
GridView1.DataBind();
}
}
正確的。就像這樣說,這只是「瞭解EF」項目。我知道它可以帶來多少痛苦,如果我想單元測試它並不暴露接口。 :) – Asdfg
那麼是的,你正在走正確的道路。 –
一個小問題。這是他們所稱的實體框架與POCO對象嗎? – Asdfg