我想使用JsonConvert.DeserializeObject來解析我從Web服務回來的JSON響應。我有服務的XSD架構文件,我通過.net轉換器工具運行以創建一個類。除了下面的字段,其他一切都完美無缺。標題中出現錯誤。它只發生在Array的日期中,具有空返回值的單個日期完美無缺,並且由於打開了NullValueHandling.Ignore設置而被忽略。有誰知道我可以如何使用JSON.NET跳過數組中的這些空日期嗎?提前致謝!錯誤轉換價值{空}鍵入'System.DateTime'Json響應VB.NET
JSON響應: 「TheDatesReturned」:[NULL,NULL,NULL,NULL,NULL,NULL],
Private TheDatesReturnedField() As Date
<System.Xml.Serialization.XmlElementAttribute("TheDatesReturned", DataType:="date")> _
Public Property TheDatesReturned() As Date()
Get
Return Me.TheDatesReturnedField
End Get
Set(value As Date())
Me.TheDatesReturnedField= value
End Set
End Property
注意:它更改爲一個字符串數組修復它爲好,但那麼它們當我確實得到迴應時,不再正確鍵入。
編輯:
如果任何人遇到這種並想知道如何得到XSD.EXE來爲他們做。他們可以在XSD文件
<xsd:element maxOccurs="6" minOccurs="0" name="TheDatesReturned" type="xsd:date" nillable="true">
這增加的nillable =「真」到外地,然後將生成這個類,它應該把這個問題的關心。
Private TheDatesReturnedField() As System.Nullable(Of Date)
可能是因爲DateTime不是可空類型?嘗試使用'DateTime?'作爲類型。 – Sam
[DateTime「null」value]的可能重複(http://stackoverflow.com/questions/221732/datetime-null-value) – Gabe
@Sam謝謝你爲我做的。太糟糕了XSD.exe不能使用DateTime?作爲默認類型。不知道我怎樣才能將您的評論標記爲答案,但是這對我來說確實如此。謝謝! –