1

我有一个叫做覆盖的区域。路由就像

context.MapRoute(

           "CoverageSummary", // Route name

           "Coverage/Summary/{policyId}", // URL with parameters

           new { controller = "Coverage", action = "Summary", policyId = UrlParameter.Optional }, // Parameter defaults

           new string[] { "Web.Mvc.Claims.Areas.Coverage.Controllers" }

           );

当我访问页面 Mysite/Coverage/Summary/10 时,它会显示一个页面。美好的。但是在一个动作方法中,我有如下代码

return RedirectToAction("Summary","Coverage", new RouteValueDictionary(new { policyID = 10 }));

但这没有加载页面 Mysite/Coverage/Summary/10 。它显示404错误。如果我仍然刷新页面它会给出 404。但是如果我在地址栏中剪切并过去相同的 url 并按 enter 它可以工作

可能是什么原因

4

1 回答 1

1

尝试使用 RouteValueDicitionary 中的 area 属性

return RedirectToAction("Summary","Coverage", new RouteValueDictionary(new { policyID = 10, area = "Your_Area_Name" })); 
于 2011-11-29T22:05:59.810 回答