如果您在单个操作中需要此行为,请使用JavaScriptSerializer将 JSON 内容反序列化为集合并使用UpdateModel/TryUpdateModel方法验证集合。
如果您需要许多操作,那么您必须通过继承DefaultModelBinder并覆盖该CreateModel方法来使用自定义模型绑定器。在该CreateModel方法中,使用JavaScriptSerializerPOST 值创建对象。
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