在操作签名中选择对象绑定器



我有一个自定义模型绑定器来从会话中获取数据,但我也想不时使用默认绑定程序。

是否可以在操作签名中选择模型绑定器而不是使用 UpdateModel?

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

谢谢

您可以使用

[ModelBinder] 属性:

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

显然,您不应该将自定义模型绑定器全局分配给Application_Start中的Cart类,否则它将自动应用于显示为操作参数的所有Cart实例。

好吧,您可以将全局自定义模型绑定器保留在Appliaction_Start中,让它在任何地方工作,并在需要时不时重置回默认绑定程序

public ActionResult MyAction(
       [ModelBinder(typeof(DefaultModelBinder))]  Cart useFormData)

相关内容

  • 没有找到相关文章

最新更新