6

我正在尝试编写一个 MapRoute 调用,该调用将使任何以“json/”为前缀的路由在操作名称前添加“json”。例如,这样的路线:

"json/{controller}/{action}"

使用“json/Foo/Bar”,它应该导致:

controller = "Foo"
action = "jsonBar"

有任何想法吗?

4

1 回答 1

4

我想知道在路由数据中包含 json 并在操作中查找它是否会更好?即当映射你的路线时,使用类似的东西(对于默认值):

new { mode="json", controller = "Home", action = "Index", id = "" }

或将路线映射为:

"{mode}/{controller}/{action}"

然后在控制器中访问它:

string mode = (string) RouteData.Values["mode"];

(或将其作为参数传入)

除此之外,您可能会编写自己的路由处理程序,但这是很多工作。

于 2009-05-07T12:12:19.210 回答