移除apsx视图引擎,及View文件夹下的web.config的作用

原创 2015年07月09日 00:12:01

<>

使用Rezor视图引擎的时候移除apsx视图引擎

Global.asax文件

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Http;
using System.Web.Mvc;
using System.Web.Routing;

namespace MvcApp
{
    // 注意: 有关启用 IIS6 或 IIS7 经典模式的说明,
    // 请访问 http://go.microsoft.com/?LinkId=9394801
    public class MvcApplication : System.Web.HttpApplication
    {
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();

            WebApiConfig.Register(GlobalConfiguration.Configuration);
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);

            //平常我们一般用Razor视图引擎,所以就没有必要要MVC再去查找aspx视图引擎,所以可以将aspx视图引擎移除掉。这样每次加载视图的时候就会快一点(因为每次加载视图的时候都去查找aspx视图引擎是要耗性能的。我们可以创建一个Home控制器,不给它创建Index视图,当我们访问/Home/Index的时候,就会提示找不到视图,我们可以看到MVC去查找了aspx和Razor视图后,没有找到,就会报找不到视图的错误)

            //为什么要把移除视图引擎的代码写在这个Global.asax文件中呢?那是因为网站启动,我就先将它移除。

            //移除aspx视图引擎  
            //ViewEngines.Engines.RemoveAt(0);

            //这个是一次Razor视图引擎
            //ViewEngines.Engines.RemoveAt(1);
        }
    }
}


在MVC项目中,我们发现有view视图里面也有一个web.config配置文件,那么这个配置文件是干什么的呢?

我们看到的视图,本质上就是一个前端类,它会在我们的视图引擎第一次找到它的时候将它编译成一个前端页面类,编译完后,就需要将这个前端页面类继承一个webViewPage<TModel>的泛型类,或者WebViewPage类  (注:WebViewPage类是webViewPage<TModel>类的父类)

(看了下面的代码后,我们就会发现视图编译完后生成的前端页面类的父类就是在View文件夹下面的这个web.config文件里指定的)

我们打开这个web.config文件就可以看到里面就有这么一段

    <pages pageBaseType="System.Web.Mvc.WebViewPage">
      <namespaces>
        <add namespace="System.Web.Mvc" />
        <add namespace="System.Web.Mvc.Ajax" />
        <add namespace="System.Web.Mvc.Html" />
        <add namespace="System.Web.Routing" />
      </namespaces>
    </pages>
如果我们将这个View文件夹中的web.config文件删除后,就会爆下面这段错误


我们访问一个视图页面,例如/Home/Index的时候,视图引擎就会编译这个Index视图,当编译的时候会发现,找到了视图,它不知编译完的这个前端页面类的父类到底是谁


所以得出结论:View文件夹下面的web.config文件的作用是告诉视图引擎如何编译视图的前台页面类,以及制定当前页面类的父类为WebViewPage

这个web.config里面的配置不需要我们手动的更改任何东西,也不能删除


版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

sql之浅谈视图的作用

【数据库】☆★sql之浅谈视图的作用 在一个项目的实际开发过程中牵涉到复杂业务的时候,我们不可避免的需要使用中间表来进行数据连接,有的同学就说了,我可以采用Hibernate进行主外键进行关联啊...

java 文件及文件夹操作(复制、移动、删除)

1. 文件及文件夹操作简介java自身对文件的操作来自于java.io.File类,能够支持: boolean exists(): Tests whether the file or di...

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

C++ 获取文件夹下的所有文件名

获取文件夹下所有的文件名是changy

Values下的文件种类简介

在res/values中的文件 字符串(String)资源:      无论字符串资源放在res/values目录下哪个资源文件中,在生成ID时都会放在R.string类中。这就意味着,字符串...

删除指定文件夹以及文件下的文件

BOOL CNewObject::DeleteFolder(LPCTSTR lpszPath)//删除文件夹以及文件夹内的文件 { SHFILEOPSTRUCT FileOp; SecureZ...

文件夹监视及文件删除的简易方法

文件夹监视及文件删除的简易方法这几天学习了一些关于文件的操作,在这里做个总结。  我想实现这样的功能:当特定的文件夹Pic当检测到有文件(保证传进来的是图片)进来时,得到该文件的绝对路径,并把它传入v...
  • I_code
  • I_code
  • 2011-03-03 13:08
  • 2557

java 删除文件夹中的文件及文件夹

package UnZip; import java.io.File; public class DelFile { public static void main(String args[])...

linux 下删除文件的 操纵

linux   下删除 文件的 方法::: 1-  remove remove(删除文件) 相关函数 link,rename,unlink 表头文件 #include 定义函数 int re...

C盘各个文件夹的作用

Documents and Settings是什么文件? 答案: 是系统用户设置文件夹,包括各个用户的文档、收藏夹、上网浏览信息、配置文件等。 补:这里面的东西不要随便删除,这保存着所有用户的文...

linux下文件夹及作用

/bin 二进制可执行命令 /dev 设备特殊文件 /etc 系统管理和配置文件 /etc/rc.d 启动的配置文件和脚本 /home 用户主目录的基点,比如用户user的主目录就是/...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)