ASP.NET MVC Web结构

ASP.NET MVC Web结构,asp.net,asp.net-mvc,project,structure,Asp.net,Asp.net Mvc,Project,Structure,这是数据库结构。它用于在asp.net mvc中构建简单的cms。在深入开发网站之前,我想确定这是否是“正确”的网站结构: 文章: 控制器文件夹:创建控制器ArticleCategoryController和ArticleController 模型文件夹:ArticleCategoryRepository和ArticleRepository 查看文件夹:ArticleCategory文件夹(Create.aspx、Edit.aspx、Index.aspx、Details.aspx);文章文件夹

这是数据库结构。它用于在asp.net mvc中构建简单的cms。在深入开发网站之前,我想确定这是否是“正确”的网站结构:

文章:

  • 控制器文件夹:创建控制器ArticleCategoryController和ArticleController
  • 模型文件夹:ArticleCategoryRepository和ArticleRepository
  • 查看文件夹:ArticleCategory文件夹(Create.aspx、Edit.aspx、Index.aspx、Details.aspx);文章文件夹(Create.aspx、Edit.aspx、Index.aspx、Details.aspx)
照片:

  • 控制器文件夹:创建控制器PhotoAlbumController和PhotoController
  • 模型文件夹:PhotoAlbumRepository和Photopository
  • 查看文件夹:相册文件夹(Create.aspx、Edit.aspx、Index.aspx、Details.aspx);照片文件夹(Create.aspx、Edit.aspx、Index.aspx、Details.aspx)
等等……
有没有更好的方法,或者这样可以吗?


谢谢。

Ile

有很多方法可以组织控制器和视图。我通常为每个完整视图创建一个控制器


我这里的主要评论是关于模型的。我不喜欢将模型代码放入MVCWeb项目的models文件夹中,除非它们是视图模型或与我的应用程序的web层直接相关,并且不适用于非web上下文。在我看来,最好不要将域类、存储库服务等放在单独的程序集或程序集组中。通过这种方式,您可以使用silverlight或其他技术替换前端,并继续利用您的核心域代码。这不仅有利于交换前端(有时很少见),而且如果您需要在网站上下文之外执行批处理类型操作,您还可以使用核心域dll进行批处理文件或命令行实用程序。

这将是一个非常简单的cms。。。我遵循了nerddinner教程-这就是为什么我的存储库位于models文件夹中。我不会把我的生活复杂化,我正处于asp.NETMVC的最开始阶段,所以我会坚持基本的结构规则。我只是想知道这个项目的控制器和视图文件夹是否组织正确。谢谢你的评论!