0

我们正在构建一个 ASP MVC3 应用程序,其中我们正在构建服务层和实体模型。第三方正在构建视图/控制器。

现在棘手的一点是模型。它应该去哪里?

我的观点是 MVC Web 应用程序将只有视图和控制器。我们的服务库将具有业务逻辑和 EF。但我认为我们不应该将 EF 实体直接暴露给 Web 应用程序。(或者我们应该?)相反,我们应该查看视图并为每个视图创建视图模型类。这可能需要为每个视图创建多个视图模型类。

任何人都可以就这是否是正确的设计发表意见?如果是这样,视图模型应该驻留在哪里?我们应该为视图模型创建另一个库吗?

4

1 回答 1

2

我建议将您的模型制作为具有 CRUD 功能的 POCO 对象——您不应该公开 EF 实体。这样,如果需要,您的服务库可以在其他应用程序或接口中重用。

如果您提供的 POCO 对象不能直接用作视图模型,则由编写控制器的团队负责从您的服务对象 (POCO) 创建视图模型。这可能(希望)是一个非常简单的视图模型,使用您的 POCO 作为属性(可能视图模型是您的一个 POCO 的列表,或者是几个不同 POCO 的组合)。

那只是我的两分钱...

于 2012-06-22T15:51:32.740 回答