ハイフンを使用してasp.net mvcアクション名を取得する方法、たとえば、ホームコントローラーのアクション名はwww.domain.com/about-us
どこにありますか。about-us
このアプローチによりcontact-us
、how-to
、 などのアクション名を持つことができます。
3771 次
4 に答える
10
.Net MVC 5 プロジェクトの問題に対する完全な解決策は次のとおりです。
プロジェクトのApp_Start/RouteConfig.csファイルを開きます。
RegisterRouteメソッドで、次のようにコードを変更します。
public static void RegisterRoutes(RouteCollection routes) { routes.MapMvcAttributeRoutes(); // <--- add this line to enable custom attribute routes routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.MapRoute( name: "Default", url: "{controller}/{action}/{id}", defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional } ); }
次に、コントローラー ファイルを開き、以下に示すように、アクションの上部にカスタム ルートの定義を追加します。
[Route("about-us")] public ActionResult AboutUs() { return View(); }
カスタム ルートを次のように使用できるようになります。
http://yourdomain.com/about-us
于 2015-10-20T16:27:47.463 に答える
0
MVC5 では、属性ルートも設定できます。
[Route("about-us")]
public ActionResult AboutUs()
{
return View();
}
于 2015-06-16T13:32:07.047 に答える
0
ファイルではAreaRegistration.cs
、次のようにルート テーブル エントリを追加できます.....
context.MapRoute(
"about_us_default",
"about-us",
new { action = "AboutUs" }
);
于 2013-09-03T09:14:11.387 に答える