如果您在单个操作中需要此行为,请使用JavaScriptSerializer
将 JSON 内容反序列化为集合并使用UpdateModel
/TryUpdateModel
方法验证集合。
如果您需要许多操作,那么您必须通过继承DefaultModelBinder
并覆盖该CreateModel
方法来使用自定义模型绑定器。在该CreateModel
方法中,使用JavaScriptSerializer
POST 值创建对象。
public class CustomModelBinder: DefaultModelBinder
{
protected override object CreateModel(ControllerContext controllerContext, ModelBindingContext bindingContext, Type modelType)
{
// JavaScriptSerializer serializer = new JavaScriptSerializer();
// return serializer.DeserializeObject(read the value from request);
}
}
现在您可以使用该属性重用CustomModelBinder
跨操作。Bind