我建立使用MVVM模式的Silverlight應用程序,但我不明白我在這裏失蹤......堅持MVVM架構問題
- ViewsProject(Silverlight應用程序),包含用戶控件和頁面。參考ViewModelsProject。
ViewModelsProject(Silverlight類庫)包含後端的視圖代碼。此外,業務邏輯將駐留在此處。它會參考Models項目。
ModelsProject(Windows類庫)包含:本地數據庫的Ado.net實體模型和構建於實體模型上的WCF RIA DomainService。它的目的是從本地數據庫獲取數據,並通過域服務公開實體。
Web項目:包含ViewsProject的xap。
到目前爲止,我所做的一切都正確嗎?如果是,那麼請幫我理解:
如何在ViewsModel 項目中調用 域服務的方法?如果我參考 ModelsProject,我得到的錯誤是 只有silverlight項目可以添加 。 如果我將ModelsProject更改爲 silverlight類庫項目 那麼我無法添加我的數據庫的實體模型 。
MVVM沒有規定,你需要在單獨的項目中分離出來的模型的ViewModels和視圖。這些都可以在不同文件夾中的同一個項目中生存,並且仍然可以實現MVVM設計。 – 2010-12-16 04:34:07
該解決方案預計會隨着時間的推移而大大擴展,因此爲了節省未來的麻煩,我決定將解決方案分解爲程序集而不是文件夾 – InfoLearner 2010-12-16 04:39:57
先讓它變得容易,並使應用程序正常工作。然後你可以考慮在多個項目/組件之間進行分配。我同意亞倫。 – Jehof 2010-12-16 07:50:57