Как использовать статический класс в Global.asax - PullRequest
0 голосов
/ 04 августа 2011

У меня есть Global.asax, где я определяю маршруты (см. Метод RegisterRoutes ниже)

У меня будет много маршрутов, поэтому я хотел бы сохранить этот метод в отдельном статическом классе, импортируя с использованием пространства именв 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);
    }
    

1 Ответ

3 голосов
/ 04 августа 2011

Вы определенно должны быть в состоянии сделать это:

  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
        );

}
...