MVC预览4 - 路由表中没有路由与提供的值匹配

我有一个路由,我通过这样的RedirectToRoute调用:

return this.RedirectToRoute("Super-SuperRoute", new { year = selectedYear });

我也试过:

 return this.RedirectToRoute("Super-SuperRoute", new { controller = "Super", action = "SuperRoute", id = "RouteTopic", year = selectedYear });

global.asax中的路由如下所示:

routes.MapRoute(
    "Super-SuperRoute", // Route name
    "Super.mvc/SuperRoute/{year}",  // URL with parameters
     new { controller = "Super", action = "SuperRoute", id = "RouteTopic" }  // Parameter defaults
);

那么为什么我会得到错误:“路由表中没有路由与提供的值匹配。”?

我看到选择年份的类型是var。当我试图用int.Parse转换为int时,我意识到selectedyear实际上是null,这将解释问题。我想下次我会在断点处更多地关注变量的值:)

0

1 答案

选择什么类型年?一个DateTime?如果是这样,那么你可能需要转换为一个字符串。

0
额外