在MVC中路由URL

时间:2011-10-22 17:57:48

标签: asp.net-mvc-3 routing maproute

我有这条路

在视图中

  <img src="PhotoDisplay.ashx?photoid=12&size=medium" alt="Image with no resize"/>

我想将源网址路由到某个操作。我必须使用这个url格式,因为我正在重建一个站点。所以我想在新站点中使所有链接都活着。 在global.asax中,我添加了如下所示的溃败

routes.MapRoute(
          "PhotoDisplay", "PhotoDisplay.ashx?photoid={photoID}&size={size}",
          new { controller = "Images", action = "PhotoDisplay", photoid= "",size="" }
      );

但它在编译时给出错误。如何为这种网址映射路由

1 个答案:

答案 0 :(得分:1)

不应在路由中定义查询字符串参数。试试这样:

routes.MapRoute(
    "PhotoDisplay", 
    "PhotoDisplay.ashx",
    new { controller = "Images", action = "PhotoDisplay" }
);

和控制器操作:

public ActionResult PhotoDisplay(string photoid, string size)
{
    ...
}