2009-05-28 78 views

回答

1

可以亚型WebFormsViewEngine:

public class MyViewEngine : WebFormViewEngine 
{ 
    public MyViewEngine() { 
     MasterLocationFormats = new[] { 
      "~/bin/Views/{1}/{0}.master", 
      "~/bin/Views/Shared/{0}.master" 
     }; 

     ViewLocationFormats = new[] { 
      "~/bin/Views/{1}/{0}.aspx", 
      "~/bin/Views/{1}/{0}.ascx", 
      "~/bin/Views/Shared/{0}.aspx", 
      "~/bin/Views/Shared/{0}.ascx" 
     }; 

     PartialViewLocationFormats = ViewLocationFormats; 
    } 
} 

然后编辑Global.asax中使用它:

private void Application_Start(object sender, EventArgs e) 
    { 
     RegisterRoutes(RouteTable.Routes); 
     // replace default WebForms view engine. 
     ViewEngines.Engines.Remove(ViewEngines.Engines.OfType<WebFormViewEngine>().Single()); 
     ViewEngines.Engines.Add(new Namespace.MyViewEngine()); 
    } 
+0

看起来很容易。谢谢 :) – 2009-05-28 15:18:39