2

我有一個現有的應用程序與數據層(主EF4),業務層(自定義代碼)和Windows應用程序 - 現在我想創建一個使用ASP.NET MVC的web應用程序,但我不是確定要做什麼,特別是在我的模型中。MVC使用現有的數據和業務層

當我的數據和業務邏輯已經存在時,我應該如何構建我的模型和控制器,比如MVC Music Store v2.0(http://mvcmusicstore.codeplex.com/)這樣的參考項目?我所有的實體都存儲在我的數據層中,所有我的方法和邏輯都存儲在我的businesslayer中,所以我想我不需要模型(除非我需要特定的Web模型),我想我的控制器只需要調用我的businesslayer中的方法爲我會在一個正常的webform應用程序?

另一個問題,如果我需要顯示2個列表與2個不同實體在1頁的數據我想我需要創建一個具有2個屬性(每個實體一個)的模型?

現在的最後一個,如果由於某種原因,例如,我的業務層的Get方法返回一個異常,應該如何在我的Controller/View中處理?

回答

0

這取決於您的應用程序的複雜性。我至少會爲每個視圖引入ViewModels,以便爲視圖提供所需的數據。如果您的應用程序重量輕,則在控制器中使用您的業務層可能會很好。但是,您可能希望引入一個與業務層交互的服務層,以保持控制器的精簡。

至於異常處理,你可能想看看HandleError屬性。

+0

從一個項目到另一個項目的複雜性各不相同 - 現在的項目非常簡單,所以我認爲我會選擇沒有新層的解決方案。什麼是ViewModel(我現在是什麼模型,視圖和控制器 - 但是ViewModel)? – keysersoze 2011-04-07 14:14:57