【发布时间】:2015-11-10 13:39:33
【问题描述】:
对于下面的代码,我想知道 Employee 类型如何受到前缀 [] 括号的影响
public ActionResult SaveEmployee([ModelBinder(typeof(MyEmployeeModelBinder))]Employee e, string BtnSubmit)
{
// some logic
}
【问题讨论】:
对于下面的代码,我想知道 Employee 类型如何受到前缀 [] 括号的影响
public ActionResult SaveEmployee([ModelBinder(typeof(MyEmployeeModelBinder))]Employee e, string BtnSubmit)
{
// some logic
}
【问题讨论】:
MyEmployeeModelBinder 是一个自定义模型绑定器,它将代替 Employee e 中的默认模型绑定器执行。
public class MyEmployeeModelBinder: DefaultModelBinder
{
public override object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext) {
...
}
}
Employee 类型会影响BindModel() 中的bindingContext 属性,例如bindingContext.ModelMetadata 和bindingContext.ModelType,其中包含有关模型的信息。看看ModelMetaData:https://msdn.microsoft.com/pt-br/library/system.web.mvc.modelmetadata%28v=vs.108%29
【讨论】: