VB.NET和Json,反序列化保留的关键字

伦普斯汀斯克

我对vbnet和json有问题。我正在尝试从restservice获得一些信息。restservice返回以下json字符串:

{
  "Default": 1,
  "Date": "2015-01-26T00:00:00+01:00",
}

我想反序列化此响应,执行以下操作:

Dim result As myclass = Newtonsoft.Json.JsonConvert.DeserializeObject(Of myclass (responseText)

问题是“默认”和“日期”是保留的关键字,因此我无法定义此类:

Public Class myclass 
    Public Property Date As Datetime
    Public Property Default as String
End Class

我无法修改de restservice,因此如何获得所需的行为?

懒惰

VB.NET规范

常规标识符可能与关键字不匹配,但转义的标识符可以匹配。

所以代替

Public Class myclass 
    Public Property Date As Datetime
    Public Property Default as String
End Class

您可以使用像方括号这样的转义标识符

Public Class [myclass]
    Public Property [Date] As Datetime
    Public Property [Default] as String
End Class

另一种解决方案是使用JsonProperty属性

Public Class SomeClass 
    <JsonProperty("Date")>
    Public Property TheDate As Datetime
    <JsonProperty("Default")>
    Public Property SomethingDefault as String
End Class

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章