2017-01-26 114 views
0

在工作的人用連載:反序列化JSON,將其與Newtonsoft CamelCasePropertyNamesContractResolver

var s = new JsonSerializerSettings(); 
s.ContractResolver = new CamelCasePropertyNamesContractResolver(); 

創建一些JSON,但現在我要反序列化到不使用駱駝情況下的物體,在不使用註釋(共享)模型。模型不使用駱駝案件。

他使用Javascript,所以對他來說沒什麼大不了的,但我在C#的土地上。

CamelCasePropertyNamesContractResolver是否存在「反向」?沒有註釋,我沒有辦法做到這一點。

+0

如果您使用Json.NET進行反序列化,那麼它應該可以工作,因爲Json.NET的反序列化代碼會將JSON屬性名稱與C#屬性名稱進行不區分大小寫的匹配。你真的有案件不起作用嗎?你能把你的問題擴展到[mcve]嗎? – dbc

+0

它應該自動工作,如果沒有,你也可以使用屬性屬性,如['JsonProperty'](http://www.newtonsoft.com/json/help/html/T_Newtonsoft_Json_Serialization_JsonProperty.htm) –

回答

0

輸入的Json看起來像 「DATASCOPE」:{ 「類型」:4, 「的clientId」:2, 「areaID表示」:1, 「AREANAME」: 「模擬器區」, 「的UnitID」: 1, 「的unitName」: 「模擬-A0B0」, 「wheelPosition」:1 },等,等

目標對象像:

public class DataScope 
{ 
    public int Type { get; set; } 
    public int ClientId { get; set; } 
    public string ClientName { get; set; } 
    etc 

莫希特是正確的,它我不區分大小寫。問題原來是我忘記了我的成員上的量詞的public

相關問題