ASP.NET Coreプロジェクトのユーザータイプに基づいて2つのコントローラがあります。 1つはadminの場合はAdminController
、もう1つの場合はUserController
です。また、サインインと連絡先のページにはHomeController
もあります。私は、管理者とユーザーの両方のコントローラに次のマップルート設定を使用しています。私はURLのASP.NETコアのルーティング
/User/user1
/Admin/user2
、次の種類を取得していたルート設定の上使用することにより
config.MapRoute(
name: "UserRoute",
template: "{controller}/{username}/{action}",
defaults: new { controller = "User|Admin", action = "Dashboard" }
);
私は
/user1
/user2
がどのようにしたいの代わりにURLでAdmin
とUser
一部を望んでいませんURLからUser
とAdmin
部分を削除しますか?コントローラーを{controller}/{username}/{action}
から削除し、デフォルトでコントローラーのみを指定すると、1つのコントローラーでのみ機能します。
はこれをチェック同様の問題:http://stackoverflow.com/questions/3337372/asp-net-mvc-removing-controller-name-from-url。デフォルトルートに影響を与えることなく、追加の 'MapRoute'に対してルート制約を利用できます。 –