使用MapRoute C#MVC进行路由

时间:2014-08-06 20:08:47

标签: c# asp.net-mvc-4 routing asp.net-mvc-routing

我正在尝试使用Web.Routing和Web.MVC设置地图路由。问题是我需要能够获取传入URL的一部分,以便我可以重新路由用户。我有我的MapRoute网址抓取整个字符串,但由于网址有?在它内部,它不会抓住整个字符串。更具体地说,在α出现之后它不会抓取任何东西。 有没有办法解决这个问题?

这是我的maproute:

        routes.MapRoute(
            name: "OldEmailLink",
            url: "{tag}",
            defaults: new { controller = "ApIssues", action = "Task", id = UrlParameter.Optional }
            );

当我调试这个时,我可以重定向到动作只是标签的字符串值是:

default.asp

标签应为:

default.asp?etaskid=32698

鉴于此网址:

http://localhost1853:/accounting/ap/default.asp?etaskid=32698

1 个答案:

答案 0 :(得分:1)

尝试使用此控制器。

 public class ApIssuesController : Controller
    {
        public ActionResult Task(Int32 etaskid)
        {

        }
    }

这就是Route Config

  routes.MapRoute(
        name: "OldEmailLink",
        url: "accounting/ap/default.asp",
        defaults: new { controller = "ApIssues", action = "Task", id = UrlParameter.Optional }
        );