2015-08-20 165 views
0

我想創建一個重定向到一個頁面使用RouteConfig格式Url.Action路由配置風格的路徑

.../Images/View/imageid 

一個Url.Action鏈接。到目前爲止,我已經找到了唯一的解決辦法是設置這樣的

@Url.Action("View/" + image.ID, "Images") 

new { imageid = image.ID }版本的鏈接返回類似.../Images/Views?imageid=image.ID其插入請求的圖像到電子郵件時不起作用(並且是視覺上不美觀)的URL。

所以我的問題:有更多的語義正確的方式來返回格式.../Images/View/imageid或我已經在使用最好的方法嗎?

回答

0

使用@Url.RouteURl(string routename, object routevalues)東西正好給輸出我在尋找

1

做下面的事情,假設Images是你的控制器,views是你的動作。

@Url.Action("Views", "Images", new RouteValueDictionary() {{"imageid", image.ID}}) 

,並在您routeconfig.cs有以下的爲你的第一個路線

routes.MapRoute(
      name: null, 
      url: "{controller}/{action}/{imageid}", 
      defaults: new { Controller = "Images", action = "Views" } 

      ); 

我還沒有測試這一點,但它應該沿着這條道路