架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

搜索
查看: 16659|回复: 0

[ASP.NET] ASP.NET MVC 修改视图的Shared默认路径(MVC2,MVC3)

[复制链接]
发表于 2016-8-5 10:49:02 | 显示全部楼层 |阅读模式
QQ截图20160805104659.jpg

ASP.NET MVC2 修改视图的默认路径

步骤:1、编写继承自WebFormViewEngine的类,重写视图路径

2、在Application_Start()中添加语句:

ViewEngines.Engines.Clear();
ViewEngines.Engines.Add(new MvcViewEngine());


  1. protected void Application_Start()
  2. {
  3.     AreaRegistration.RegisterAllAreas();
  4.     ViewEngines.Engines.Clear();
  5.     ViewEngines.Engines.Add(new MvcViewEngine());
  6.     RegisterRoutes(RouteTable.Routes);
  7. }

  8. public class MvcViewEngine : WebFormViewEngine
  9. {
  10.     public MvcViewEngine()
  11.     {
  12.         base.Masterlocatio{过滤}nFormats = new string[] { "~/Views/{1}/{0}.master", "~/Views/Shared/{0}.master" };
  13.         base.Viewlocatio{过滤}nFormats = new string[] {
  14.         "~/Views/Books/{1}/{0}.aspx",
  15.          "~/Views/Books/{1}/{0}.ascx",
  16.          "~/Views/Shared/{0}.ascx",
  17.          "~/Views/{1}/{0}.aspx"};
  18.         base.PartialViewlocatio{过滤}nFormats = base.Viewlocatio{过滤}nFormats;
  19.     }
  20. }
复制代码



ASP.NET MVC3 修改视图的默认路径

步骤:1、编写继承自RazorViewEngine的类,重写视图路径

2、在Application_Start()中添加语句:

ViewEngines.Engines.Clear();
ViewEngines.Engines.Add(new MvcViewEngine());

  1. protected void Application_Start()
  2. {
  3.     AreaRegistration.RegisterAllAreas();

  4.     ViewEngines.Engines.Clear();
  5.     ViewEngines.Engines.Add(new MvcViewEngine());

  6.     RegisterGlobalFilters(GlobalFilters.Filters);
  7.     RegisterRoutes(RouteTable.Routes);
  8. }

  9. public class MvcViewEngine : RazorViewEngine
  10. {
  11.     public MvcViewEngine()
  12.     {
  13.         Masterlocatio{过滤}nFormats = new[] {"~/Views/Shared/{0}.cshtml"};
  14.         Viewlocatio{过滤}nFormats = new[]
  15.         {
  16.             "~/Views/Admin/{1}/{0}.cshtml",
  17.             "~/Views/{1}/{0}.cshtml",
  18.             "~/Views/Shared/{0}.cshtml"
  19.         };
  20.         PartialViewlocatio{过滤}nFormats = Viewlocatio{过滤}nFormats;
  21.     }
  22. }
复制代码



大家注意一下这两版本的区别,MVC2自定义的类继承自 WebFormViewEngine,MVC3自定义的类继承自RazorViewEngine;

视图文件的后缀也是不同的,希望大家多多注意。





上一篇:Html Agility Pack下载以及使用方法
下一篇:c#在循环多线程传入多个参数容易出现的问题
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2026-9-1 22:32

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表