ModelBindingContext ModelName
问题描述:
任何人都可以解释ModelName从哪里填充?ModelBindingContext ModelName
查看MSDN文档,这里没有说明。 我正在创建一个自定义模型联编程序,并在其中我得到以下空值: var result = bindingContext.ModelName);
答
ModelBindingContext对象由调用BindModel()方法的任何人创建并填充。如果模型作为动作方法的参数进入,则由ControllerActionInvoker.GetParameterValue()完成,ModelName属性将设置为参数的名称(除非被[Bind(Prefix = ...) ])。
如果通过UpdateModel()更新模型,则ModelBindingContext对象由UpdateModel()方法本身创建。 ModelName参数将是传递给UpdateModel()的前缀参数。
当我把这行代码放入我的自定义模型绑定器结果为空时,因为模型名称为null。 var result = bindingContext.ValueProvider.GetValue(bindingContext.ModelName); 如何从价值提供者中获取值? 这可以通过其他方式完成 - 基本上可以从窗体或查询中获取值。谢谢 – Noel 2010-03-26 00:02:21