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