0

セッションからデータを取得するためのカスタムモデルバインダーがありますが、デフォルトのバインダーを時々使用したいと思います。

UpdateModelを使用する代わりに、アクション署名でモデルバインダーを選択することは可能ですか?

public ViewResult MyAction(Cart useSessionBinder, Cart useFormData)
{}

ありがとう

4

2 に答える 2

1

[ModelBinder]次の属性を使用できます。

public ActionResult MyAction(
    [ModelBinder(typeof(MyCustomModelBinder))] Cart useSessionBinder, 
    Cart useFormData
)
{
    ...
}

Cart明らかに、カスタムモデルバインダーをのクラスにグローバルに割り当てる必要はありません。そうしないと、アクションパラメーターとして表示Application_Startされるすべてのインスタンスに自動的に適用されます。Cart

于 2012-07-05T15:09:58.383 に答える
0

グローバルカスタムモデルバインダーをAppliaction_Startに保持して、どこでも機能させ、必要に応じてデフォルトのバインダーにリセットすることができます。

public ActionResult MyAction(
       [ModelBinder(typeof(DefaultModelBinder))]  Cart useFormData)
于 2012-08-03T18:46:15.793 に答える