1
我已经在JSON串以下列组织数据(举个例子,我已经格式化的一行)提取数据
[
{
"id": 60237,
"categories": [
{ "name": "name1" },
{ "name": "name2" }]
}
]
我使用以下类:
Public Class Entry
Public Property Id As Integer
Public Property Categories As Category()
End Class
Public Class Category
Public Property Name As String
End Class
我一直在使用JSON.NET
Dim entries() As Entry = JsonConvert.DeserializeObject(Of Entry())(JSONSTRING)
想从JSON字符串中提取,具有LIN deserialised Q请求,来自“类别”字段的数据与已定义类别名称的列表。 例如,我想提取每个类别名称为“name1”和“name2”的数据“行”。该列表可以采用以下形式:dim desiredcategories = {“name1”,“Name2”}
注意:类别名称未由我定义,可以更改。但是,即使其他类别更改或添加或删除,Name1和Name2也保持不变。
你能帮我在VB .NET中写入“where”行吗?
Dim requestanswer = From entry In entries
Where ???
注意:为简化后,我还没有把“其中”线被制作成相同的请求,其他元件,其JSON字符串和其他类等内。
“提取”从JSON数据通常做通过反序列化它。使用JSON.NET而不是Linq。它也可以通过解析完成,但你已经有了类。阅读[问]并参加[旅游] – Plutonix
_I想要从“类别”字段中提取数据,并带有已定义类别的列表_ - 如果您希望所有已定义的类别 - 您根本不需要“Where”。 'allCategories = entries.SelectMany(e => e.Categories).Select(c => c.Name);' – Fabio
您的'Category'类只有名称,没有值?你期望得到什么回报? – NetMage