我在asp.net web api的模型绑定和验证(通过数据注释)中遇到了一些问题.
好像我有一个属性的模型,如
Dictionary<string, childObject> obj { get; set; }
Run Code Online (Sandbox Code Playgroud)
childObject的验证似乎没有触发.数据从json与Json.Net序列化器绑定.
是否有一些解决方法或修复此问题?或者我误解了与此相关的其他内容?
我不禁想知道为什么这不会导致错误:
public class Child
{
[Required]
[StringLength(10)]
public string name;
[Required]
[StringLength(10)]
public string desc;
}
//elsewhere
Child foo = new Child();
foo.name = "hellowrodlasdasdaosdkasodasasdasdasd";
List<ValidationResult> results = new List<ValidationResult>();
Validator.TryValidateObject(foo, new ValidationContext(foo), results, true);
// results.length == 0 here.
Run Code Online (Sandbox Code Playgroud)
天啊.我忘了声明属性而不是字段.