2010-11-04 118 views
3

我與每一個複雜的業務邏輯一個多層的基於SOA的企業應用程序的工作。許多業務驗證需要來自數據庫的大量支持數據,這會降低性能。併發用戶的數量約1000 客戶端是多層,頂部的WinForms。要使用企業庫嗎?

我們正在考慮,幾乎所有的企業庫塊。

  • 緩存應用程序塊
  • 數據訪問應用程序塊
  • 異常處理應用程序塊
  • 記錄應用程序塊
  • 政策注入應用程序塊
  • 安全應用程序塊
  • 統一應用程序塊
  • 驗證應用程序塊

    1. 企業庫的正確方法是走嗎?
    2. 請建議庫/那在您看來,更好的框架,但考慮告知方式,他們是更好的。
    3. 難道是不好的做法與其他庫混合企業庫?例如,我們考慮使用log4net進行日誌記錄。
+0

請參閱http://stackoverflow.com/questions/53065/enterprise-library-application-blocks-or-home-grown-framework,http://stackoverflow.com/questions/118047/log4net-vs-enterprise-庫 - 這就是更好,更快,而且,在一般情況下,http://stackoverflow.com/questions/tagged/enterprise-library?page=10&sort=newest&pagesize=50 – 2010-11-22 23:55:16

+0

[優點和使用企業庫的缺點可能重複(http://stackoverflow.com/questions/241054/advantages-and-disadvantages-of-using-enterprise-library) – 2010-11-22 23:55:41

回答

5

在我看來,對於企業庫做的事情都是更好的工具。

  • 數據訪問塊

    我承認,因爲我與EntLib的一個項目工作,它一直是幾年,但我記得數據塊在什麼它提供非常有限的。全功能的ORM的像NHibernate的或實體框架,甚至查詢工具,如亞音速報價更多。我工作的每個項目都不使用NHibernate,我最終實現了可以在NHIB中「免費使用」的功能。

  • 緩存應用程序塊

    使用帶有緩存的ORM將覆蓋大部分一切緩存塊呢。

  • 異常處理塊

    有一些好的想法這裏起步,但這個概念可以大大在提高。 Rinat Abdullin在leveraging action policies for exception handling上有一些很好的起始信息。

  • 記錄應用程序塊

    使用NLOG或log4net的。期。如果您需要立面,請使用Simple Logging FacadeCommon.Logging。記錄是一個非常有限的定義良好的組件。這些框架幾乎完全相同且穩定。沒有必要過分複雜。

  • 政策注入&團結塊

    研究DI /國際奧委會和挑選一個。不容易出錯。這是a good list的考慮。

  • 安全&驗證塊

    在這一點上,我們發現這麼多的EntLib更好的選擇,是把它作爲一個依賴,以支持安全或驗證感覺重。此外,還有很多其他的工具來協助安全(Rhino Security)和驗證(xValLokad

+0

我同意Valiation應用程序塊(VAB)是很「重」爲你調用它。在基礎它不是很難把握,但是當你想要做的多一點,它就會很快變得複雜。然而VAB,使許多情形的,根本不可能與其他的驗證框架(如基於配置驗證,通過使用規則集的錯誤和警告之間的區別,等等)。這是我所知道的最靈活和可擴展的驗證框架。這種靈活性的代價是複雜性。它完全取決於您的要求,VAB是否適合您的項目。 – Steven 2010-11-06 09:28:02

3

我用過的企業圖書館(舊版本的)了一段時間,沒有任何問題。

我覺得有一定使用一個有凝聚力的組庫,而不是拼湊庫的修補工作(如果你要使用很多)的優勢。

我已經找到了記錄塊是非常好的 - 它的高度可配置的,如果你用得好你就可以登錄全面,具有很大的靈活性。