我一直在摸不着头脑,所以我想我会伸手去拿。
我们使用ISO标准数据类型的C#版本,并且在很多情况下它实现了一个名为
的属性type
e.g。
private EntityNamePartType typeField;
[System.Xml.Serialization.XmlAttributeAttribute(Namespace="")]
[DataMember(Name = "type", IsRequired = true)]
public EntityNamePartType type
{
get
{
return this.typeField;
}
set
{
this.typeField = value;
}
}
现在,无论我做什么或尝试使用webAPI中默认使用的Json.Net序列,我都拒绝序列化。
如果我使用DataContractJsonSerialiser,则属性序列化正常。
但是,如果我将属性重命名为“Type”,它就可以工作,例如
private EntityNamePartType typeField;
[System.Xml.Serialization.XmlAttributeAttribute(Namespace="")]
[DataMember(Name = "type", IsRequired = true)]
public EntityNamePartType Type
{
get
{
return this.typeField;
}
set
{
this.typeField = value;
}
}
因此,由于某种原因,json.net序列化程序忽略了名为“type”(区分大小写)的属性
有什么方法可以解决这个问题吗?