2010-05-21 56 views
2

我正在使用實體框架構建應用程序。我正在使用T4模板來生成自我跟蹤實體。使用實體框架進行n層應用程序開發的最佳實踐方法是什麼?

目前,我正在考慮在一個單獨的項目中創建實體框架代碼。在這個相同的項目中,我會有部分類和實體的附加方法。

我正在考慮爲服務層(WCF)使用上層/表示層的方法創建單獨的項目。 WCF層將引用實體框架項目。 WCF層中的方法將返回實體或接受實體作爲參數。

我想爲表現層(ASP.net)創建第三個項目,這將調用WCF服務,但也需要引用實體,因爲WCF方法將這些類型作爲參數/返回類型。

總之,我想使用由T4模板生成的STE實體作爲DTO在所有圖層中使用。

我最初是想創建一個映射到每個實體的業務邏輯層。示例:如果我有一個客戶類,業務層將有一個CustomerBLL類,然後customerBLL中的方法將被服務層使用。我也試圖在這個業務層創建一個DTO。然而,我發現這種方法非常耗時,並且我看不到主要的好處,因爲它會創建更多的維護工作。

使用實體框架4開發n層應用程序的最佳做法是什麼?

回答

0

你應該將你的實體和它們的持久化邏輯分離成單獨的項目。這樣你的表示層就只需要引用包含實體的項目並且是持久性的無知。

我猜項目擊穿,如下將是一個不錯的方法(至少它已制定了適合我:))

  • 實體在一個項目
  • 持久性邏輯在另一個項目(資料庫,工作單位 實現)
  • WCF在一個項目
  • 表示層

希望它有幫助。

相關問題