2010-05-14 65 views
1

我們正在開發分層的Web應用程序。規格:ASP.Net分層通信

  • 3層,數據層,業務層, ui層。
  • 編程,C#
  • 數據層使用實體框架

目前,我們計劃有通過LINQ 2個實體的數據層的回IEnumerable<T>業務層,業務層將數據返回到UI層。

由於UI層不知道數據層的存在,它將如何處理從BLL傳遞給它的IEnumerable的結果,其中T是在數據層中定義的?

有沒有關於如何做到這一點的任何好的例子。請注意,對於鬆散耦合的圖層,我對工廠/接口/抽象非常新穎。

我在這裏看到了這個問題passing data in an ntier application,並且建議讓實體層在所有層之間共享......但我不希望其他層能夠查詢數據庫。

回答

1

將數據對象定義在單獨的項目或至少一個單獨的名稱空間中,以便顯示層可以引用對象,但不能訪問數據庫的DAL。

+0

由於實體框架自動創建DTO並且我的實體數據模型位於我的數據層中,因此如何讓Visual Studio在其他位置創建這些DTO? – 2010-05-14 17:54:17

+0

我最終使用T4爲我創建了DTO。 – 2010-05-20 14:33:05