2016-04-28 118 views
0

在startup.cs文件生成URL到不同的控制器,我已經改變了默認圖路線保持routdata在ASP NET MVC核心(使用錨標記輔助)

routes.MapRoute(
       name: "default", 
       template: "{controller=home}/{company=-1}/{action=index}/{id?}"); 

它可以正常工作,當您創建的URL鏈接(使用anchor tagHelper)來自您正在訪問的同一控制器。

但我失去了公司的價值,當我創建一個鏈接到另一個控制器

<a asp-action="index" asp-controller="AnotherController" >TEST</a> 

例如,如果我訪問http://本地主機/的TestController/22(公司= 22) 生成的URL到另一個控制器是http:// localhost/AnotherController 生成的URL到相同的控制器是正確的:http:// localhost/testcontroller/22/otherAction

回答

0

我不知道是否是最佳實踐,我可以使用asp-route- prefix屬性來解決它。

<a asp-action="index" asp-controller="test" asp-route-company="@ViewContext.RouteData.Values["company"]">TEST</a>