2013-03-25 36 views
0

我正在查看ProjectTracker CSLA示例解決方案,它具有用於DAL,EF實現DAL的項目以及用於業務對象/規則等的項目。CSLA:真的需要很多獨立的項目嗎?

我知道把邏輯分離分解到項目是一種很好的做法,但我的擔憂是將DAL和EF放入業務程序集中真的存在問題嗎?

看來構建時間受項目數量的影響最大。

我正在處理的應用程序可能會有18個或更多的項目,如果我按照示例佈局。

我知道我可以做出多種解決方案來幫助緩解這種情況,但我不想一開始就走這條路。

謝謝。

回答

4

推薦多個項目,這對於獲得CSLA及其n層體系結構的全部好處是必需的。

如果您知道不再需要n層部署,從不需要高級安全性,永遠不需要增加的可伸縮性,並且通常不打算構建企業級應用程序,那麼您可以使用更少的項目。實際上,如果您正在構建一個應用程序,並且您知道要將其部署爲2層應用程序,那麼您可以將業務類和數據訪問類與UI代碼一起直接放入UI項目中。

這是個好主意嗎?

它會工作嗎?是。

1

爲了回收Rocky的回答,我工作的公司使用CSLA,並且我們最初在我們的商業課程中擁有所有DAL代碼。當時我們使用的是Oracle 10g作爲dbms,但希望切換到SQL Azure(並且我們進行了相當大的系統升級並同時進行了模式更改)。所以,我們做了以下內容:

  • 落實DAL接口作爲項目
  • 實施2個DAL項目,分別用於Oracle和SQL(實際上3W /一個模擬分貝,但對於證明更概念)

這讓我們在兩個數據庫中同時測試轉換。如果我們從DAL項目入手開始,這將會容易得多。長話短說,可能需要更多的時間,但除非你對洛基所有的觀點都積極,否則這是值得的。