【发布时间】:2017-02-01 07:24:56
【问题描述】:
我有以下 JSON & 类,
{ “身份证”:123, "名字": "fName", “姓氏”:“lName” }
public class Student
{
public int Id { get; set; }
[StringLength(4)]
public string FirstName { get; set; }
[StringLength(4)]
public string LastName { get; set; }
}
我正在尝试反序列化上述 JSON 以创建学生类的实例。
var body = //above json as string;
Student model = null;
JSchemaGenerator generator = new JSchemaGenerator();
JSchema schema = generator.Generate(typeof(Student));
using (JsonTextReader reader = new JsonTextReader(new StringReader(body)))
{
using (JSchemaValidatingReader validatingReader = new JSchemaValidatingReader(reader) { Schema = schema })
{
JsonSerializer serializer = new JsonSerializer();
model = serializer.Deserialize(validatingReader, typeof(Student));
}
}
这会抛出字符串长度验证异常,有没有办法通过忽略所有数据注释验证来反序列化 JSON?
【问题讨论】:
-
如果你不想要它,为什么不直接删除 StringLength(4)?
标签: c# asp.net asp.net-mvc jsonschema