Я определил две ссылки действий на мой взгляд, как показано ниже:
@Html.ActionLink("Baxter", "SearchAffaires", new { LabelName = "Baxter" })
@Html.ActionLink("Favorite", "SearchAffaires", new { OnlyFavorite = true })
Я определил два маршрута ниже:
routes.MapRoute(
"Search Affaire Only Label", // Route name
"{controller}/Label/{LabelName}", // URL with parameters
new { controller = "Affaire", action = "SearchAffaires" } // Parameter defaults
);
routes.MapRoute(
"Search Affaire Only Favorite", // Route name
"{controller}/Favorite", // URL with parameters
new { controller = "Affaire", action = "SearchAffaires", OnlyFavorite = true } // Parameter defaults
);
Если я запускаю свое решение и указываю на свою «любимую» ссылку, я получаю следующий URL:
http://localhost:3817/Affaire/Favorite
Это нормально для меня. Теперь я перезапускаю свое решение (важно) и указываю на ссылку «метка» (в данном примере мой ярлык - «Бакстер»), я получаю следующий URL:
http://localhost:3817/Affaire/Label/Baxter
Это нормально для меня. Теперь я не перезапускаю свое решение и указываю на свою «любимую» ссылку, я получаю следующий URL:
http://localhost:3817/Affaire/Label/Baxter?OnlyFavorite=True
Как видите, параметр OnlyFavorite передается снова, но я этого не ожидал!
Что я могу сделать, чтобы избежать такого поведения?
Спасибо.