2011-08-04 33 views
0

使用一個靜態類我有一個Global.asax,我定義路由(見下面的RegisterRoutes方法)如何在Global.asax中

我將有很多途徑,所以我想保持這種方法一個單獨的靜態類,使用Global Asax中的名稱空間導入並使用Application_Start中的方法。

不幸的是我無法做到。

所以我的問題:

  • 我可以使用靜態類的Global.asax?
  • 如果是,我該怎麼辦?

    void RegisterRoutes(RouteCollection routes) 
    { 
        // Register a route for Categories/All 
        routes.MapPageRoute(
          "All Categories",  // Route name 
          "Categories/All",  // Route URL 
          "~/AllCategories.aspx" // Web page to handle route 
         ); 
    
        // Register a route for Products/{ProductName} 
        routes.MapPageRoute(
         "View Content",    // Route name 
         "Content/{ContentId}", // Route URL 
         "~/Cms/FrontEndCms/Content.aspx"  // Web page to handle route 
        ); 
    
    } 
    
    protected void Application_Start(object sender, EventArgs e) 
    { 
        // ROUTING. 
        RegisterRoutes(RouteTable.Routes); 
    } 
    
+0

感謝內森·庫普爲您更正:)嘿嘿 – GibboK

回答

3

你一定要能夠做到這一點:

protected void Application_Start(object sender, EventArgs e) 
    { 
     // ROUTING. 
     Helper.RegisterRoutes(RouteTable.Routes); 
    } 


public static class Helper 
{ 
    public static void RegisterRoutes(RouteCollection routes) 
    { 
     // Register a route for Categories/All 
     routes.MapPageRoute(
       "All Categories",  // Route name 
       "Categories/All",  // Route URL 
       "~/AllCategories.aspx" // Web page to handle route 
      ); 

     // Register a route for Products/{ProductName} 
     routes.MapPageRoute(
      "View Content",    // Route name 
      "Content/{ContentId}", // Route URL 
      "~/Cms/FrontEndCms/Content.aspx"  // Web page to handle route 
     ); 

} 
+0

,*應該肯定* –

+0

感謝傑夫,現在工作 – GibboK