【问题标题】:ASP.NET MVC Web structureASP.NET MVC Web 结构
【发布时间】:2010-03-23 12:19:05
【问题描述】:

Database http://img443.imageshack.us/img443/6049/structure.gif

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

文章:

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

照片:

  • Controllers 文件夹: 创建控制器 PhotoAlbumController 和 PhotoController
  • 模型文件夹: PhotoAlbumRepository 和 PhotoRepository
  • 查看文件夹: PhotoAlbum 文件夹(Create.aspx、Edit.aspx、Index.aspx、Details.aspx);照片文件夹(Create.aspx、Edit.aspx、Index.aspx、Details.aspx)

等等……
有没有更好的方法或者这样可以吗?


谢谢。
伊莱

【问题讨论】:

    标签: asp.net asp.net-mvc project structure


    【解决方案1】:

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

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

    【讨论】:

    • 这将是一个非常简单的 cms... 我遵循了 nerddinner 教程 - 这就是为什么我的存储库位于模型文件夹中的原因。我不会把我的生活复杂化,我在 asp.net mvc 的最开始,所以我会坚持基本的结构规则。我只是想知道这个项目的 Controllers 和 Views 文件夹是否组织正确。感谢您的评论!
    猜你喜欢
    • 1970-01-01
    • 2013-11-07
    • 2023-03-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-15
    • 1970-01-01
    相关资源
    最近更新 更多