У меня есть несколько маршрутов для отображения подробной информации о магазине и информации о продукте. он определен на Global.asax как следующий
routes.MapRoute("DetailProduct",
"{controller}/{action}/{ProductGUID}/{CategoryGUID}/{StoreGUID}/{UserID}",
new {
controller = "Home", action = "DetailProducts",
ProductGUID = UrlParameter.Optional,
CategoryGUID = UrlParameter.Optional,
UserID = UrlParameter.Optional,
});
routes.MapRoute("StoreInfo", "{controller}/{action}/{StoreGUID}/{StoreCountryLocation}/{StoreName}/{StoreUserID}",
new
{
controller = "Home",
action = "DetailStore",
StoreGUID = UrlParameter.Optional,
StoreCountryLocation = UrlParameter.Optional,
StoreName = UrlParameter.Optional,
StoreUserID = UrlParameter.Optional
}
);
следующие гиперссылки определены в файле ASPX для выполнения этих маршрутов сопоставления StoreInfo и DetailProduct.
Storeinfo
<a href=<%: Url.RouteUrl("StoreInfo", new RouteValueDictionary(new { Controller = "Home", Action = "DetailStore", StoreGUID = itemList.StoreGUID, StoreCountryLocation = itemList.Country, StoreName = itemList.StoreName, StoreUserID = itemList.UserID }))%>>
</a>
Деталь продукта
<a href=<%= Url.RouteUrl("DetailProduct", new RouteValueDictionary( new { controller="Home",action="DetailProducts",ProductGUID=itemList.productGUID,CategoryGUID=itemList.CategoryGUID,UserID=itemList.UserID,StoreGUID=itemList.StoreGUID})) %>> </a>
Тем не менее, когда нажата гиперссылка storeinfo , вместо словаря значений маршрута storeinfo указываются подробные значения словаря маршрута продукта
?RouteData.Values.Keys
Count = 6
[0]: "controller"
[1]: "action"
[2]: "ProductGUID"
[3]: "CategoryGUID"
[4]: "StoreGUID"
[5]: "UserID"
Не могли бы вы посоветовать?