By default, it looks like the "web forms" view engine is registered before the Razor view engine:
aspnetwebstack/ViewEngines.cs[
^]
private static readonly ViewEngineCollection _engines = new ViewEngineCollection
{
new WebFormViewEngine(),
new RazorViewEngine(),
};
If you don't need
aspx
views, you can remove the
WebFormViewEngine
in the
Application_Start
event:
var webFormEngine = ViewEngines.Engines.OfType<WebFormViewEngine>().FirstOrDefault();
if (webFormEngine != null) ViewEngines.Engines.Remove(webFormEngine);
If you want both view engines, but want Razor views to take priority, you can change the order:
ViewEngines.Engines.Clear();
ViewEngines.Engines.Add(new RazorViewEngine());
ViewEngines.Engines.Add(new WebFormViewEngine());