Asp.Net MVC:URLのダッシュを有効にするには?
2023-09-05 08:26:24
質問
URLの単語をダッシュで区切りたいのですが、どうすればいいですか? そこで、代わりに
/MyController/MyAction
私は好きです。
/My-Controller/My-Action
これは可能か?
どのように解決するのですか?
ActionName属性をこのように使用することができます。
[ActionName("My-Action")]
public ActionResult MyAction() {
return View();
}
次に、ビューファイルを "My-Action.cshtml"(または適切な拡張子)と呼ぶ必要があることに留意してください。また、すべてのHtml.ActionLinkメソッドで、"my-action"を参照する必要があります。
コントローラには、このような簡単な解決策はありません。
編集:MVC5へのアップデート
グローバルにルートを有効化します。
public static void RegisterRoutes(RouteCollection routes)
{
routes.MapMvcAttributeRoutes();
// routes.MapRoute...
}
MVC5 では、Attribute Routing はプロジェクトに吸収されました。使用できるようになりました。
[Route("My-Action")]
アクションメソッドについて。
コントローラの場合は
RoutePrefix
属性を指定すると、そのコントローラ内のすべてのアクションメソッドに適用されます。
[RoutePrefix("my-controller")]
を使うことの利点の一つは
RoutePrefix
を使う利点のひとつは、URL パラメータが任意のアクションメソッドに渡されることです。
[RoutePrefix("clients/{clientId:int}")]
public class ClientsController : Controller .....
スニップ...
[Route("edit-client")]
public ActionResult Edit(int clientId) // will match /clients/123/edit-client
関連
-
[解決済み】パラメータ付きRedirectToAction
-
[解決済み] ファイルアップロード ASP.NET MVC 3.0
-
[解決済み] ASP.NET MVC Frameworkで複数のサブミットボタンを処理する方法は?
-
[解決済み] ASP.NET MVCでenumからドロップダウンリストを作成するにはどうすればよいですか?
-
[解決済み] ASP.NET MVCのビューを文字列としてレンダリングする方法は?
-
[解決済み] ASP.NET MVCコントローラは、Imageを返すことができますか?
-
[解決済み] ASP.NET MVCでコントローラのメソッドをオーバーロードすることはできますか?
-
[解決済み] ASP.NET MVCでHTML-5のdata-*属性でダッシュを使用する方法
-
[解決済み】ASP.NET MVCで別のコントローラからビューを表示する
-
[解決済み] [Solved] ASP.NET MVCで404を適切に処理するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] データベースに 'AspNetRoles' という名前のオブジェクトがすでに存在します。
-
[解決済み] ファイルまたはアセンブリ 'System.Web.Mvc' を読み込めませんでした。
-
[解決済み] asp.net MVCの@RenderSectionとは?
-
[解決済み] 既存のデータベースの選択されたテーブルからDbContextをScaffoldすることができますか[重複]。
-
[解決済み] Html.ActionLinkをリンクではなく、ボタンや画像にする
-
[解決済み】Html.ActionLinkが"?Length=4 "とレンダリングされるのはなぜか?
-
[解決済み】ASP.NET MVCのフォームでチェックボックスを処理するにはどうすればよいですか?
-
[解決済み] ASP.NET MVCでリクエストスロットルを実装するための最良の方法は?
-
[解決済み】NULLモデルを持つrenderpartialは、間違った型を渡される
-
[解決済み】Html.ActionLinkを使用して別のコントローラのアクションを呼び出す