我有一个安静的Web服务正在接收带有json数据的POST。这是json示例,第三个键/对在键名中有正斜杠。
{
"_notes": "Test",
"_received": true,
"item/id": "8a69d38fba4c40d5a3d730807db87859"
}
这是我的Post方法
Public Sub Post(value As Testing)
这是测试类定义
Public Class Testing
Public _notes As String
Public _received As Boolean
Public item/ID As String
End Class
我收到编译器错误,因为我无法在变量名中使用正斜杠。我应该采用不同的方式捕获我身边的数据吗?不幸的是我无法控制json中的密钥名称。
答案 0 :(得分:2)
假设您正在使用.NET Web API框架的内置反序列化,您应该花些时间了解这些序列化程序以及如何控制它们。文档中的Here is a good introductory point。
内置的东西默认使用JSON.NET进行JSON序列化,其中a number of attributes允许您控制它。您对这个问题感兴趣的是JsonPropertyAttribute。例如:
Public Class Testing
Public _notes As String
Public _received As Boolean
<JsonProperty("item/id")>
Public ItemID As String
End Class