2010-12-21 54 views
2

我寫的C#/ WPF一個簡單的桌面應用程序,現在我希望創建另一個,這將佔有多大的功能較大的應用程序。我在想,我應該創建三個獨立的項目:一個包含共享代碼,另一個包含兩個應用程序。關於在C#/ WPF中構建共享代碼庫的提示/資源?

我的問題是,我不完全熟悉.NET/WPF,所以我不知道是否有對這種事情的一些最佳做法。任何人都可以提供一些很好的信息來源,例如項目或只是一些簡要的建議?

編輯:要多放一點細節上的情況下,第一個應用程序是一個專門的編輯器和第二應用正在該文件的編輯和包裝它周圍的項目模型,以創造一種基本的IDE。

+0

編輯在回答您的編輯。 – Firoso 2010-12-22 18:14:24

回答

1

老實說要看是什麼水平,你打算共享代碼。例如,將所有業務邏輯代碼放入一個項目/類庫並獨立維護它是完全可行的,但應該強烈建議混合biz邏輯與WPF自定義控件。考慮你正在模塊化的抽象層,以及你正在引入的依賴性heiarchy並相應地進行重構。

編輯:

在回答您的上述變化,我建議如下:上述應推入一個項目作爲單獨的命名空間相關聯的邏輯和DAL。視覺元素(視圖,視圖模型)應該很可能被移入單獨的項目和命名空間中。一旦你可以將它們合併在一起,並從一個包含主機窗口的exe文件和一個用於其他託管可視內容的UserControl啓動它們,那麼你就可以繼續整合到更大的IDE項目中。這裏的關鍵是:

視圖層和邏輯視圖 - > Editor.Visual.dll

商務邏輯&數據訪問 - > Editor.Core.dll

我希望這有助於。

+0

那麼,它本質上是一個整體小型應用程序,並將其轉換爲可嵌入到較大應用程序中的控件。對於從代碼分層的角度分離用戶界面和業務邏輯的概念,我沒有問題,但我不確定是否有強烈的理由來努力將這些跨多個項目的人直接拆分。 – mwtb 2010-12-21 01:01:46

+0

這聽起來像一個高度用unsual情景......我不知道我會實施類似的東西......如果這些微小的個人工具,它可能不是一個真正的大問題,在所有。 – Firoso 2010-12-21 01:23:49

+1

似乎是一個明智的開始。感謝您的迴應。 – mwtb 2010-12-22 20:06:16