html.actionlink に問題があります。2 つのルートが定義されています。
routes.MapRoute(
"AdminDefault",
"Admin/{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
routes.MapRoute(
"Default",
"{controller}/{action}/{id}",
new { controller = "Page", action = "Details", id = "0" }
);
アクションリンクは、デフォルトコントローラーを使用したいときに、AdminDefault を使用しています。routelink を使用せずにデフォルト ルートを使用するにはどうすればよいですか?
さらに情報を追加するには。シンプルなアクション (home/index) があり、ビュー (index.cshtml) が表示されます。そのビューには次のようなものがあります。
@Html.ActionLink("About", "About", "Home")
「/Home/About」にしたい場合、「/Admin/Home/About」の URL を生成します。defaultadmin ルートは、管理ページの /admin/controller/action に移動するリンクを後で作成できるようにするためのものです。しかし、デフォルトで生成された URL を管理下に置かないようにしたいと考えています。