我在寫一個工具來讀取JSON文件。我正在使用NewtonSoft工具將JSOn反序列化爲一個C#類。下面是一個示例片段:當字段名包含空格時反序列化JSON
"name": "Fubar",
".NET version": "4.0",
"binding type": "HTTP",
字段名稱包含C#標識符中無效的空格和其他字符(。)。 這是做什麼的正確方法?
(不幸的是我沒有改變JSON格式的選項。)
我在寫一個工具來讀取JSON文件。我正在使用NewtonSoft工具將JSOn反序列化爲一個C#類。下面是一個示例片段:當字段名包含空格時反序列化JSON
"name": "Fubar",
".NET version": "4.0",
"binding type": "HTTP",
字段名稱包含C#標識符中無效的空格和其他字符(。)。 這是做什麼的正確方法?
(不幸的是我沒有改變JSON格式的選項。)
使用JsonProperty
屬性以指示JSON的名稱。例如
[JsonProperty(PropertyName = "binding type")]
public string BindingType { get; set; }
不知道爲什麼,但這並不適用於我。在這個例子中,我每次只返回一個「BindingType」的空值。我居然發現它更容易剛纔下載的JSON結果爲一個字符串,然後做一些事情,如:
myString = myString.Replace(@"binding type", "BindingType")
你會做,因爲反序列化之前的步驟。
也是少點文字。雖然這在我的例子中有效,但會出現這種情況。例如,如果「綁定類型」不僅是一個字段名稱,而且是一個數據段,這種方法會改變它以及可能不需要的字段名稱。
完美,謝謝! – Sisiutl