ASP.NET MVC ベースの Web サイトに、ID ではなくユーザー名で選択できるページを作成しようとしています。ルートは次のようにする必要があると思いました:
routes.MapRoute(
"CustomerView", "Customer/Details/{username}",
new { username = "" }
);
routes.MapRoute(
"Default", "{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = "0" }
);
しかし、HTML.Actionlink を使用するたびにhttp://mysite.com/Customer/Details?username=valuehereを取得します。次のような一般的なルートを検討しました。
routes.MapRoute(
"CustomerView", "Customer/Details/{username}",
new { controller="Customer", action = "Details", username = "" }
);
しかし、どちらのルートを適用するかを間違えると、より多くの問題が発生すると思います。