ASP.NET使用LINQ反序列化JSON并循环结果

时间:2016-06-06 00:28:39

标签: asp.net json vb.net linq deserialization

我试图反序列化一个JSON字符串,然后遍历它的结果。 我从这里开始:http://www.newtonsoft.com/json/help/html/QueryJsonLinq.htm

我想将其转换为VB.NET版本,但我遇到了各种各样的错误。 我没有运气就尝试了几位译员(例如http://converter.telerik.com/)。

JSON字符串

Dim postTitles = From p In rss("channel")("item")DirectCast(p("title"), String)
'End of Statement Expected on `DirectCast(p("title"), String)`

首先,我试图反序列化JSON:

For Each item As var In postTitles
    Log("title", item)
Next
'type 'var' is not defined

For Each (dim item In postTitles)
    Log("title", item)
Next
'Expression expected (on `dim`)

然后我尝试循环搜索结果,但我尝试过以下两种方式都无法工作

{{1}}

VB.NET中执行此操作的正确代码是什么?

1 个答案:

答案 0 :(得分:1)

Dim data As JObject = JObject.Parse(json)

Dim postTitles = From doc In data("response")("docs")
                 Select doc("title").Tostring()

For Each item In postTitles
    Log("title", item)
Next

参考:Introduction to LINQ in Visual Basic