2

我对 ASP.NET MVC 或 Web API 应用程序中的“模型”文件夹或层有疑问(我正在使用 Web API,但应该根据我的要求同时适用于这两者)。请参阅所有关于尝试使用 MVC 或 Web API 作为整个架构的基本示例,“模型”文件夹通常填充有CustomerOrdersAddress等类。

但是,我的所有实体都已提取到它们自己的域/业务层,因此我在 UI 层中没有模型类。

现在我仍然需要 ViewModels 作为我的 MVC 应用程序的最终成形数据,但无论对于需要视图的 MVC 或注入的存储库在没有视图的情况下返回成形数据的 Web API,我仍然不需要“模型”文件夹在我的 UI 层中将这些实体移植到另一个单独的层时。

这个可以吗?在使用 MVC 的情况下,我在 UI 层中可能仍然没有任何模型类,“模型”文件夹是否需要包含我的 ViewModel,如此处所讨论的?胖模型/瘦控制器与服务层我认为将“模型”文件夹留空并创建一个单独的“视图模型”文件夹更有意义,以显示模型存在,但在另一层。

感谢您对其中的每个问题提供帮助,谢谢!

4

2 回答 2

4

你做对了。在一个重要的 MVC 应用程序中,您的 Models 文件夹通常只包含 ViewModel。如果您的 ViewModel 在另一层,那也没关系。

虽然 ASP.NET MVC 是一个固执己见的框架,并且必须遵循某些约定,但模型的位置并不是其中之一。然而,改变你的观点是另一回事。

于 2013-01-09T19:39:46.790 回答
2

我认为这没有任何区别。如果你想为新手开发者节省 2 分钟的时间,你可以在空的模型文件夹中放置一个 README.TXT。

于 2013-01-09T19:41:40.113 回答