asp.net mvc路由url.action问题

时间:2015-04-02 17:42:30

标签: asp.net-mvc model-view-controller controller routing url.action

在我看来,我正在使用

<img src="@Url.Action("Method", new { Model.Url })" ...
<img src="@Url.Action("Method", new { Model.Url })/1" ...

在那种方法中我有params:

public ActionResult Method(string url, int ids=0)

使用

var book = GetBookByUrl(url);
...
switch (ids)
{
case 1:

在我的global.asax中,我有:

        routes.MapRoute(null,
            "{controller}/{action}/{url}/{ids}",
            new { controller = "Controller", action = "Method", url = "", ids = @"\d+" });

我的视图返回正确的URL(附加了/ 1和/ 2),但我似乎无法获取我的方法来检索id的值,以便我可以在我的action方法中操作它们以检索不同的结果在我的视图中提供的Url.Action URL,是什么给出了?

ids参数似乎总是0(不是路由数据),url参数有整个网址“bla-bla / 2”,我不想要。

请注意,尽管有大量的路由资源,但我已经阅读了它们,似乎无法实现这一点 - 这也是将数据从请求路由到控制器的标准方法吗?

请以示例的方式告诉我如何解决,非常感谢!

0 个答案:

没有答案