首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MVC3 MapRoute问题

MVC3 MapRoute问题
EN

Stack Overflow用户
提问于 2011-03-24 21:40:05
回答 1查看 973关注 0票数 2

我创建了以下路由:

代码语言:javascript
复制
routes.MapRoute(
    "TestRoute4", // Route name
    "Report {ref_id} Test Board", // URL with parameters
    new { controller = "stats", action = "index" } // Parameter defaults
);

public ActionResult index(string ref_id)
{
}

这工作得很好,但我现在想让我的控制器知道它是从与Report 25 Test Board匹配的路由调用的。在MapRoute中,有没有一种方法可以让我也把其他东西传递给控制器?我甚至不介意硬编码。我只想通过报告和测试板这两个字。

希望你能帮上忙

曼迪

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-03-24 21:45:03

使用DataTokens

代码语言:javascript
复制
Route route = routes.MapRoute(
    "TestRoute4", // Route name
    "Report {ref_id} Test Board", // URL with parameters
    new { controller = "stats", action = "index" } // Parameter defaults
);

route.DataTokens["YourKey"] = "your value";

在你的控制器上,你可以这样做:

代码语言:javascript
复制
public ActionResult Index() {

   // check if matched route is TestRoute4 (optional)
   if (this.RouteData.Route == RouteTable.Routes["TestRoute4"]) {
      // do something

      var val = this.RouteData.DataTokens["YourKey"];
   }

}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5420089

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档