zoukankan      html  css  js  c++  java
  • Manage your ViewEngine(Wirte by myself)

    I think anybody would have the same problem as my that have a  little big mvc project  and of couse we have alot views to share ,its necessary for reuse, but sadlly our MVC3 razor view only provide one share dir of “Share”.

    If you type viewengin in ZZK , you will c most results are tell you to create a new view engine, its too complex to only add a share directory .

    So my solution is to modify the VE, firstly you should know ,its init two default viewengine :

        static ViewEngines()
    
        {
    
            ViewEngineCollection engines = new ViewEngineCollection();
    
            engines.Add(new WebFormViewEngine());
    
            engines.Add(new RazorViewEngine());
    
            _engines = engines;
    
        }
    

    My code(because no aspx or other webforms need in my website so no webform VE needed!)

                ViewEngines.Engines.Clear();
    
                var rve = new RazorViewEngine();
    
                var newLoactions = rve.PartialViewLocationFormats.ToList();
    
                    newLoactions.AddRange(new List<string>
    
                                  {
    
                                      //"~/Views/{controller:1}/{0}.cshtml"
    
                                      "~/Views/XXX/{0}.cshtml"
    
                                  });
    
                rve.PartialViewLocationFormats = newLoactions.ToArray();
    
                ViewEngines.Engines.Add(rve);

    Hope can help you too!

    作者:KKcat
        
    个人博客:http://jinzhao.me/
        
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    【设计模式
    【设计模式
    【设计模式
    【设计模式
    【设计模式
    【设计模式
    实干猪
    Mysql 千万级快速查询|分页方案
    如何成为一名优秀的CTO(首席技术官)
    成为优秀程序员的10个有效方法
  • 原文地址:https://www.cnblogs.com/jinzhao/p/2092134.html
Copyright © 2011-2022 走看看