Kevin Cheng's Yard
电脑是我的老婆,编程是我的灵魂,代码是我的语言,按键是我在歌唱。
随笔- 54  文章- 0  评论- 249 
博客园  首页  新随笔  联系  管理  订阅 订阅

关于MVC项目目录结构调整的想法

MVC项目的默认目录结构:
    Scripts               : js 文件
    Content               : css, image 等文件
    Controllers           : 控制器目录
        HomeController.cs : Home 控制器,对应的视图在Views/Home/目录下
        ProductController.cs : Product 控制器,对应的视图在Views/Product目录下
    Models                : 模型目录,里面放实体类代码
    Views                 : 视图目录
        Home              : Home视图目录,对应HomeController.cs
            Index.aspx    : Home/Index视图,对应HomeController.Index方法
            Create.aspx   : Home/Create视图,对应HomeController.Create方法
        Product           : Product视图目录,对应ProductController.cs
            Index.aspx    : Product/Index视图,对应ProductController.Index方法
            Create.aspx   : Product/Create视图,对应ProductController.Create方法
        Shared            : 共享的一些视图,用户控件,masterpage等可以放在这
        web.config        : 该文件禁止了直接访问该目录下的视图。所有的请求都由路由以及控制器控制
    Default.aspx          : 默认页
    global.asax           : 在该文件中写了路由规则
    web.config            : 网站配置文件

我的想法:
    (1)script、css以及image经常是组合在一起使用的(如jqGrid),强行分成两个目录很不方便,建议合并
    (2)在实际使用中查找Controller和对应的视图有点麻烦,必须在两个不同的目录下查找。
        ·虽说控制器和视图是低耦合的,但毕竟还是有千丝万缕的关系
        ·将控制器和视图分在两个目录存放,编程过程中经常会有思维中断的现象出现
        ·不像webform那样,直接双击asp页面的控件就可以跳到cs页面,思维上和操作上都很自然
        我建议,对于小型项目可以将controller文件都放到对应的视图文件夹中。

故调整后的目录如:
    Content               : css, image,js 等文件
    Models                : 模型目录,里面放实体类代码
    Views                 : 视图目录
        Home              : Home视图目录,对应HomeController.cs
            HomeController.cs : Home 控制器,对应的视图在Views/Home/目录下
            Index.aspx    : Home/Index视图,对应HomeController.Index方法
            Create.aspx   : Home/Create视图,对应HomeController.Create方法
        Product           : Product视图目录,对应ProductController.cs
            ProductController.cs : Product 控制器,对应的视图在Views/Product目录下
            Index.aspx    : Product/Index视图,对应ProductController.Index方法
            Create.aspx   : Product/Create视图,对应ProductController.Create方法
        Shared            : 共享的一些视图,用户控件,masterpage等可以放在这
        web.config        : 该文件禁止了直接访问该目录下的视图。所有的请求都由路由以及控制器控制
    Default.aspx          : 默认页
    global.asax           : 在该文件中写了路由规则
    web.config            : 网站配置文件

对于小型的项目,这样编程思路不会被切换控制器和视图的操作所打断,内容组织使用上也很方便,大家不妨试试 :)

转载请注明出处:http://surfsky.cnblogs.com 

标签: MVC ASP.NET
绿色通道:好文要顶关注我收藏该文与我联系
posted @ 2010-10-11 09:45 Kevin Cheng 阅读(398) 评论(1) 编辑 收藏
发表评论
1935118
 回复 引用 查看   
#1楼2010-10-15 09:33 | 老四      
有点意思……
注册用户登录后才能发表评论,请 登录 或 注册,返回博客园首页。
首页博问闪存新闻园子招聘知识库
最新IT新闻:
· 谷歌将出售Clearwire股份 不到收购价1/10
· 为什么Google比苹果更令微软恐惧?
· 思科拟2.71亿美元收购私有公司Lightwire
· 社交商务公司Bazaarvoice将于2月24日进行IPO
· 戴尔收购备份软件公司AppAssure
» 更多新闻...
最新知识库文章:
· 领域模型管理与AOP
· 编程的艺术:漂亮的代码和漂亮的软件
· GIT分支管理是一门艺术
· 编程:是一门艺术
· 编程是一门艺术吗?
» 更多知识库文章...

China-pub 2011秋季教材巡展
China-Pub 计算机绝版图书按需印刷服务
Copyright ©2012 Kevin Cheng
精于斯,乐于斯。
昵称:Kevin Cheng
园龄:6年3个月
粉丝:20
关注:1
<2010年10月>
日一二三四五六
262728293012
3456789
10111213141516
17181920212223
24252627282930
31123456

搜索

 
 

常用链接

  • 我的随笔
  • 我的评论
  • 我的参与
  • 最新评论
  • 我的标签
  • 更多链接

我的标签

  • Rss RssItem RssChannel XmlSerializer(1)
  • MVC ASP.NET Razor(1)
  • MVC Razor ASP.NET(1)
  • MVC ASP.NET(1)
  • javascript oo 类 对象 命名空间(1)
  • ASP.NET MVC SKIN 换肤(1)
  • Silverlight WPF(1)

随笔分类

  • 日子(3)
  • .NET(14)
  • .NET组件控件(15)
  • IT新闻(1)
  • 报表开发(1)
  • 代码生成器(1)
  • 工作流引擎
  • 建模与快速开发 (5)
  • 数据库 (4)
  • 杂项(7)

随笔档案

  • 2010年12月 (1)
  • 2010年11月 (1)
  • 2010年10月 (6)
  • 2010年8月 (7)
  • 2010年6月 (3)
  • 2009年12月 (1)
  • 2009年11月 (2)
  • 2009年5月 (2)
  • 2008年12月 (1)
  • 2008年8月 (1)
  • 2008年7月 (1)
  • 2007年12月 (1)
  • 2007年6月 (1)
  • 2007年5月 (1)
  • 2007年3月 (2)
  • 2007年1月 (1)
  • 2006年12月 (1)
  • 2006年11月 (1)
  • 2006年10月 (1)
  • 2006年9月 (1)
  • 2006年8月 (3)
  • 2006年6月 (5)
  • 2006年3月 (2)
  • 2006年2月 (1)
  • 2005年12月 (7)

文章分类

  • .NET(1)

相册

  • 回忆

Blogs

  • DbToCode
  • RapidTier
  • SmartPersistenceLayer
  • 灵感之源

NET WebSite

  • ASP.NET
  • CodeProject
  • CSDN
  • GoDotNet
  • MSDN
  • SourceForge

Special

  • icsharpcode.com
  • Open License
  • Python

最新评论

阅读排行榜

评论排行榜

推荐排行榜