2009-08-06 45 views
2

我需要創建一個可以在WEB/WPF應用程序中使用其業務邏輯的應用程序,是否有任何標準方法來實現這一點。我是模式的新手,並且一直在思考模式和框架的概念。我不想重新發明輪子。:)可以用於Web/Windows/WPF的體系結構

任何想法?

+0

如何比較WCSF和CSLA? – Greens 2009-08-07 15:18:27

回答

1

您可能會在領域驅動設計閱讀起來。 DDD的重點是您正在談論的業務層。它全部是面向對象的,純粹用POCO(plain-old-clr-objects)構建。它爲外部世界提供以服務形式使用的接口,並以存儲庫的形式爲外部世界提供持久性接口。順便說一下,DDD與MVC和類似模式幾乎完美匹配,因爲它很好地隔離了Domain模型。

你可以從這裏開始,但我會用這個鏈接或通過閱讀埃裏克·埃文斯書「領域驅動設計」的CSLA http://dddstepbystep.com/

1

你一定要讀這個guide。瞭解涉及的各種模式和設計是一個很好的起點。

0

適用於大多數模式的核心概念將是「分離關注」或「n層」架構。如果您打算讓Web和WPF應用程序使用相同的數據,請確保數據層與業務邏輯分離並且容易包含。

通過這種方式,您可以將Web應用程序和WPF應用程序連接到相同的數據存儲,但不必擔心背後的潛在問題。你所有的應用程序需要知道的是,它獲得一個X或一個DataTable的列表或其他,並可以從那裏繼續。

您可以輕鬆將其應用於您的應用程序的各個方面。我建議從「低端」方面開始,比如數據訪問和業務功能。理想情況下,一旦這些指標得到很好的確定,所有你必須擔心的是應用程序如何呈現給用戶,哪裏有各種實現,但核心數據/功能在它們之間保持不變。

0

當你需要存在於不同的看法您的應用程序,標準模型 - 視圖 - 控制器模式可用於:

http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller

的基本思路是,通過分離這些元素,你得到更好的控制研究,以及作爲在使用不同視圖的應用程序(如web和WPF)中重用模型和控制器的能力。

你應該看看ASP.NET的ASP.net MVC框架和WPF的Prism框架。

還有其他的變化,如模型視圖演示。和模型 - 視圖 - 視圖模型:

http://msdn.microsoft.com/en-us/magazine/dd419663.aspx

0

如果你創建一個良好架構的三層架構(或n層),那麼它doesntr你的UI是不管是什麼。它可以是一個Web應用程序,一個Windows應用程序,一個移動應用程序或其他任何東西。

UI(可以是任何東西) | | 業務邏輯層 | | DAL | | 數據源(SQL數據庫)

以及用於將數據從一層傳輸到另一層的實體層。

嘗試WCSF(使用MVC內部)

0

搜索開始 - 組件的可擴展邏輯架構。這是一個用於創建「業務對象」的.NET類庫。這個業務層可以在Winforms,Web或WPF中同樣使用。

這個圖書館是免費的,亞馬遜上有書籍描述它是如何工作的。 Here是本書的C#版本。還有一個VB版本

0

Layered Architecture:本文介紹.NET/WPF富客戶機應用程序的具體示例體系結構。域層和下面的所有層也可以在WEB應用程序中重用。