1. ホーム
  2. asp.net-mvc

[解決済み] ActionNameの目的

2023-04-05 12:52:26

質問内容

ActionName" 属性を使用してアクション メソッドにエイリアスを設定することの利点は何ですか? 私は、ユーザーに他の名前でアクション メソッドを呼び出すオプションを提供することに、あまり利点があるとは思えません。エイリアスを指定した後、ユーザーはエイリアスを使用してのみアクションメソッドを呼び出すことができます。しかし、それが必要であるならば、なぜユーザーはアクションメソッドのエイリアスを指定するのではなく、アクションメソッドの名前を変更しないのでしょうか?

どなたか、"ActionName" が大きな利益をもたらすことができる、または使用するのが最善であるシナリオでの使用の例を提供していただけると本当にありがたいです。

どのように解決するのですか?

アクションを数字で開始したり、.net が識別子に許可していない文字を含めることができます。 - 最も一般的な理由は、同じ署名のアクションを2つ持つことができるからです (あらゆる scaffolded コントローラの GET/POST Delete アクションを参照してください)。

例: url アクションの名前にダッシュを使用することができます。 http://example.com/products/create-product 対して http://example.com/products/createproduct または http://example.com/products/create_product .

public class ProductsController {

    [ActionName("create-product")]
    public ActionResult CreateProduct() {
        return View();
    }

}