VS生成的mvc模板的目录文件作用

本文介绍了VS生成的MVC模板中各目录文件的作用,如web.config用于配置设置,防止直接访问服务器文件;ViewStart.cshtml作为视图启动点,执行前会运行_ViewStart.cshtml内容;_layout.cshtml提供公共布局;WebApiConfig.cs和RouteConfig.cs分别配置API和普通控制器的路由。
摘要由CSDN通过智能技术生成

web.config

所有的子目录都继承它的配置设置,Views下的web.config默认拦截url请求来匹配controller,不允许直接访问服务器文件,views文件夹外的web.config不拦截访问图片之类的服务器文件,但大部分类型的文件被禁止访问。 

详见百度百科


ViewStart.cshtml 

MVC中执行任何一个视图之前都要先执行Views文件夹下的 _ViewStart.cshtml 视图的内容,一般默认引用_layout.cshtml。

@{Layout = "~/Views/Shared/_Layout.cshtml";}

PS.action方法中必须以return View()来返回视图才会执行_ViewStart.cshtml 中的内容;

如果是以PowerView() 方法来返回视图的话,则不会执行_ViewStart.cshtml 中的内容。


_layout.cshtml

被_viewStart.cshtml引用后,可提供公有布局,如头部尾部布局。


/App_Start/WebApiConfig.cs

apiController(System.Web.Http)的相关配置,例如路由。


/App_Start/RouteConfig.cs

 普通的控制器(System.Web.Mvc.Controller)的相关配置,例如路由

//url为http://localhost:xxx/test/action 时匹配至HomeController的Index方法
routes.MapRoute("test1", "test/Action", new { controller = "Home", action = "Index" });
//url为http://localhost:xxx/test/abc  时匹配至HomeConrtoller的abc方法
routes.MapRoute("test2", "test/{action}", new { controller = "Home" });
PS.路由的配置遵循前后顺序,一个一个往后匹配,所以上述的第二种情况({controller}/{action})要写在最后,不然其他符合的路由永远匹配不到。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值