使用剃须刀时关闭WebFormViewEngine?

时间:2011-05-06 14:38:34

标签: asp.net-mvc configuration webforms razor

我今天早上下载了Glimpse进行试用,并在点击“视图”标签时注意到了这一点:

Glimpse Views Tab

它会检查所有已加载的视图引擎。我找到了web.config中指定RazorViewEngine的位置,但我找不到WebFormViewEngine的位置。因为我知道我的项目中永远不会有Web表单视图,

  1. 关闭WebFormViewEngine
  2. 是否可以/安全?
  3. 如何关闭WebFormViewEngine

2 个答案:

答案 0 :(得分:73)

如果您不使用它,那么删除Web表单视图引擎是完全可以的。你可以这样做:

public class Global : HttpApplication
{
    public void Application_Start()
    {
        // Clears all previously registered view engines.
        ViewEngines.Engines.Clear();

        // Registers our Razor C# specific view engine.
        // This can also be registered using dependency injection through the new IDependencyResolver interface.
        ViewEngines.Engines.Add(new RazorViewEngine());
    }
}

上述方法调用将放入global.asax文件中。

来源code

答案 1 :(得分:14)

另一种方法是只删除您要删除的视图引擎:

    var webformVE = ViewEngines.Engines.OfType<WebFormViewEngine>().FirstOrDefault();
    ViewEngines.Engines.Remove(webformVE);