Json.Net序列化/反序列化类名称属性C#

Json.Net序列化/反序列化类名称属性C#

问题描述:

对不起(可能)微不足道的问题,但是,我试图使用一个Web服务,其中实体和我的数据模型类被命名为不同。Json.Net序列化/反序列化类名称属性C#

我想保留我的模型.Net类名称并使用Json属性名称来映射串行器/解串器与相应的Web服务实体。 例如:

Web服务实体:

“人物”

我的模型类:

“雇员”

我已经做:

[JsonObject(Title="People")] 
public class Employee 
{ 

    [JsonProperty("DifferentPropertyName")] 
    string propertyName1 { get; set; } 
} 

但json串行器/解串器仍在继续使用.Net类名称,我需要设置jsonObject标题。

有办法实现它吗?

编辑

我工作的一个Xamarin窗体应用程序,使用Simple.OData.Client消费OData服务

感谢

+0

也许这将帮助:http://stackoverflow.com/questions/13839426/how-can-i-add-一个自定义根节点时序列化一个对象与json-net – Yanga

+0

也许这可以帮助: '[JsonProperty(Title =“People”)] public string propertyName1 {get;设置;}' –

+0

请显示正在做错事情的序列化/反序列化代码。 – DavidS

DataContractAttribute可能是您的解决方案。

public class RichFilter 
{ 
    public Trolo item { get; set; } 
} 
[DataContract(Name = "item")] 
public class Trolo 
{ 
    public string connector { get; set; } 
} 

如果一个序列化对象RichFilter,这里是输出:

{"item":{"connector":"AND"}}