2011-07-05 93 views
2

可能重複:
A modern n-layer asp.net web application sample?N層架構ASP.Net

我有一個困難時期試圖設計在ASP.Net了堅實的N層架構。我知道基本功能:BLL,DAL和Business Objects等。我無法理解的是應用程序的實際流程以及BLL和DAL中的返回類型應該是什麼。

我讀過的大多數文章都建議BLL和DAL通過Business Objects進行通信。但是,如果在每次傳遞期間必須實例化業務對象兩次,我不會看到真正的好處。

有沒有人有任何好的教程/示例應用程序的任何鏈接,可以指導我在正確的方向?

感謝

+0

你是在談論層(物理層)還是層(編程範式)?我問,因爲n層與數據訪問層或業務邏輯層無關。 –

+0

我正在看ASP.net web表單,並且我對有效編程圖層感興趣。 – robert

+1

這是另一個問題的重複:http://stackoverflow.com/questions/3277257/a-modern-n-layer-asp-net-web-application-sample –

回答

0

首先,你必須明白,層和層是不同的東西,雖然他們經常被混淆。一個圖層是一個軟件抽象。 DAL中的L表示圖層。 BLL中的最後一個L代表圖層。

層是某種類型的物理分離。按照最寬鬆的定義,僅僅把DAL放在一個單獨的程序集中被認爲是一個Tier,雖然我的定義更窄一些。我認爲一個層是一個物理上獨立的組件,不需要在同一臺計算機上運行(雖然它可能運行在它上面,但並不需要)。

但要回答你的問題。是的,Business Objects通常用於傳輸數據(也稱爲數據傳輸對象或DTO)。我不知道你的意思是不得不實例化對象兩次。你可以說得更詳細點嗎?

0

不知道您是否已經遇到了msdn上的這篇文章。如果不是這樣,值得一讀,因爲他們討論設計層級,特別是DAL,不同方法的差異,優缺點。我認爲他們和你一樣使用相同的術語。 Designing Data Tier Components and Passing Data Through Tiers

您可能還會對類似問題here的回答有興趣。