>我正在使用一堆需要反序列化的 JSON 文件。我面临的一个适当的问题是 JSON 文件中的某些内容不遵循正确的编码标准,因此当我创建 POCO 类时,我违反了命名约定
下面是一个小例子
{
"category": "classified"
}
在这种情况下,我必须创建一个 POCO 类作为
public class Category
{
public string category{ get; set; }
}
在这里,我以一个简单的字母开始一个属性名称,这在 C# 中是错误的命名约定。
我能做些什么吗?
使用JsonProperty
属性指定属性名称:
using Newtonsoft.Json;
// ...
[JsonProperty(PropertyName = "category")]
public string Category{ get; set; }
如果您使用的是较新版本的Newtonsoft序列化程序,它将为您处理大多数简单的事情,例如这样。更复杂的可以使用属性进行处理。
public class Category
{
[JsonProperty(PropertyName = "category")]
public string DifferentNameCompletely{ get; set; }
}