2013-03-06 43 views
0

我想阅读cookie以查看他们是否曾访问过该网站,然后决定在那一点他们应该去哪里。我可以检查我的Cookie以决定在RegisterRoutes中加载哪个页面

如果不是cookie,则加载默认页面。

我会在RegisterRoutes中处理这个吗?

这是我目前有:

public class MvcApplication : HttpApplication 
    { 
    public static void RegisterGlobalFilters(GlobalFilterCollection filters) 
    { 
     //filters.Add(new HandleErrorAttribute()); 
    } 

    public static void RegisterRoutes(RouteCollection routes) 
    {  
     routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 
     routes.MapRoute(
      "Default", // Route name 
      "{controller}/{action}/{id}", // URL with parameters 
      new { controller = "Account", action = "Logon", id = UrlParameter.Optional } 
    ); 

    } 

    protected void Application_Start() 
    { 
     AreaRegistration.RegisterAllAreas(); 

     RegisterGlobalFilters(GlobalFilters.Filters); 
     RegisterRoutes(RouteTable.Routes); 
    } 
    } 

我是否改变的RegisterRoutes来决定在哪里从这里去或我会做这个别的地方?

回答

1

为什么你没有这样做的行动?我认为这将是一个更好的方式来做到这一点。在Action内部创建一个Controller(作为默认路由)动作,检查cookie并将该值(或者cookie不存在时)重定向到所需的路由。这样你就可以单元测试你的动作。

让我知道你是否需要更多帮助或代码。

+1

好点,不知道为什么我没有想到这一点。猜猜我已经专注于路线... – ErocM 2013-03-06 16:16:36