MVC区域小结

MVC3一直在学习,项目中有的时候也会用到,博客园也一直逛,想写点什么东西,可惜我这个人平时都很懒,理论层面的东西自己写不来,还是来点实际的简单入门的博客,对自己总结能力是一种提升,当然也希望对没有使用过区域的人有所帮助。

为什么要有区域?

MVC本身提倡的就是关注点分离,控制器控制业务逻辑,模型用于读取数据,视展示展示页面,这样不管是对于开发者本身还是对于后来维护项目的开发者来说都是有极大好处的,能很开熟悉项目的业务,而不会像层次不清晰,代码不规范,逻辑混乱的项目,提升开发效率。但是当项目本身的业务逻辑足够复杂,如果所有的业务逻辑都写个Controller文件夹下面的时候,你会看到非常庞大的各种命名的Controller,这个时候区域的作用就显示出来了,你可以一个业务逻辑对应一个文件夹,非常实用,简单明了.

如何写区域?

右击自己的MVC项目->添加->区域,写一下自己的区域名称,然后结果如下图所示:

生成的Login文件夹在Areas下面,而且帮助我们生成了一个LoginAreaRegitrations.cs的类文件,这个有什么作用接下来再说,先建立LoginInfo的控制器来看下效果:

如何处理区域控制器重名?

如果在区域控制器下面建立一个Home控制器,Controller文件夹下面如果也有一个Home控制控制器这个时候会冲突如果所示:

解决的方法很简单,就是在区域控制的刚才我们看到的那个LoginAreaRegitrations.cs中的RegisterArea方法中加一下控制的命名空间

同样也可以另外一个重名重名的在相对应的路由位置添加相对应的命名空间~

代码自己写起来很简单,真的要是写成博客还是需要费点时间,接触的东西倒是挺多的,高深的自己目前也写不来,自己没事写点基础的东西,锻炼自己的同时也希望能够帮助到大家~周一好心情~

MVC区域小结

时间: 2024-10-11 23:55:43

MVC区域小结的相关文章

记录学习MVC过程,MVC区域母版页(七)

1.MVC的区域就是一个小的mvc,区域路由高于普通的路由 mvc区域自带m,v和c,可以把产品,会员,新闻,文件多的时候,可以用多个区域分割项目成小项目 2.渲染局部视图和局部action  (ifram方式不会被蜘蛛爬到,不利于SEO) @{ //Html.RenderPartial("About"); //只渲染了about的页面,数据不会被加载 Html.RenderAction("About");//页面和controller里传过来的数据都被渲染了 }

MVC区域 视图必须派生自 WebViewPage 或 WebViewPage<TModel>

http://blog.csdn.net/iack_ji/article/details/16965885 今天在学习 mvc区域时,将区域控制器类 外迁到其他的程序集的练习中出现了"视图必须派生自 WebViewPage 或 WebViewPage<TModel>"错误,后来经过查找资料,发现是原来没有将views文件夹下的web.config文件一起复制到区域文件夹下.

MVC 区域内默认控制器不能访问(Multiple types were found that match the controller named ‘Index&#39;)

异常处理汇总-后端系列 http://www.cnblogs.com/dunitian/p/4523006.html 错误信息 和主页的默认控制器冲突了,修改下Areas里面的默认控制器就可以了 MVC 区域内默认控制器不能访问(Multiple types were found that match the controller named 'Index')

将子域名请求路由到MVC区域

写了个扩展,分享给需要的朋友. 0x01 使用方法 在mvc区域中的{xxxx}AreaRegistration.cs文件中,如ProjectsAreaRegistration.cs <pre> <code> using Dsvisual.Extensions; namespace Dsvisual.WebApp.Areas.Projects{    public class ProjectsAreaRegistration : AreaRegistration    {     

MVC 区域功能

因为MVC项目是要求都放在固定的文件夹,所以,当项目大的时候,会很不方便管理,所以微软引入的区域的功能 使用方法: 在项目上右击--添加--区域 就会出现Areas的文件夹,里面就是子MVC 渲染: Html.RenderPartial("About");  //只是把About的视图(也就是HTML页)渲染(嵌套)到Index页 Html.RenderAction("About");  //是讲控制器的Action也渲染到Index页

MVC 区域模块

mvc4.0新增的area区域机制,可以协助你在架构较为大型的项目,让独立性较高的部分功能独立成一个MVC子网站,以降低网站与网站之间的耦合性,也可以通过area的切割,让多人同时开发同一个项目时候,能够减少互相冲突的机会. 在mvc项目中不能有两个同名的控制器,即使你有区分不同的命名空间可以正常编译,但实际上在运行时仍然出错,除非在app_start/RouteConfig文件中通过mapRoute方法新增网址路由的设置,并明确指定命名空间,才能让此功能正常运行. 添加区域 项目上单击右键 添

MVC学习小结

自从说到项目要用MVC来做后,就开始咋进了MVC的学习热潮中,从学习提高班录制视频到自己找一些资料和Demo,反反复复学习中终于算是对MVC有了一定的了解了,下面来分享下自己学习到的一些知识! 1.学习历程 <MVC开发实战>学习导图 小结:这本书前前后后看了有三遍,从刚开始的不懂,硬着头皮看:到第二遍的理解以至到第三遍,算是对MVC整体有了一个很好的把握.并且这本书讲解的算是挺通俗易懂的,除了枯燥,还是很容易懂的.能把这本书明白,对MVC就会由初步的了解. <MVC开发学习实录>

MVC区域使用

新建项目 Main: 添加一个MVC5控制器并添加index视图:(HomeController) Views/Home/Index.cshtml内容: @{ Layout = null; } <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width" /> <title>Index</title&g

VS2013和VS2015中MVC 区域路由匹配顺序相反

创建测试工程 分别在vs2013和vs2015中创建mvc项目,并创建First.Second.Three三个Area,每个Area下面创建一个HomeController和Index视图.修改RouteConfig.cs中的路由注册方法,添加命名空间 public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.M