C# 反序列化使用Newtonsoft CamelCasePropertyNamesContractResolver序列化的JSON
一个工作的家伙用过:C# 反序列化使用Newtonsoft CamelCasePropertyNamesContractResolver序列化的JSON,c#,json,annotations,deserialization,camelcasing,C#,Json,Annotations,Deserialization,Camelcasing,一个工作的家伙用过: var s = new JsonSerializerSettings(); s.ContractResolver = new CamelCasePropertyNamesContractResolver(); 创建一些JSON,但现在我必须反序列化为不使用camel大小写的对象,而不在(共享)模型中使用注释。模型不使用camel case 他使用Javascript,所以对他来说没什么大不了的,但我在C#land CamelCasePropertyNamesContrac
var s = new JsonSerializerSettings();
s.ContractResolver = new CamelCasePropertyNamesContractResolver();
创建一些JSON,但现在我必须反序列化为不使用camel大小写的对象,而不在(共享)模型中使用注释。模型不使用camel case
他使用Javascript,所以对他来说没什么大不了的,但我在C#land
CamelCasePropertyNamesContractResolver有“反向”吗?我看不出没有注释就可以做到这一点。输入Json看起来像
“数据范围”:{
“类型”:4,
“客户ID”:2,
“区域ID”:1,
“区域名称”:“模拟器区域”,
"团结":1,,
“单位名称”:“Sim-A0B0”,
“车轮位置”:1
}等等等等等等
目标对象,如:
public class DataScope
{
public int Type { get; set; }
public int ClientId { get; set; }
public string ClientName { get; set; }
etc
Mohit是对的,它不区分大小写。问题是我忘记了成员上的
public
量词。如果您使用Json.NET进行反序列化,那么它应该可以正常工作,因为Json.NET的反序列化代码对Json属性名和c#属性名进行了不区分大小写的匹配。你真的有一个不起作用的案子吗?你能把你的问题扩展成一个吗?它应该自动工作,如果不能,你也可以使用属性,比如