【发布时间】:2012-04-02 18:47:07
【问题描述】:
我有以下代码将 XML 文件加载到数据表中(我走这条路是因为我不知道如何直接查询 XML)。我想使用 Select 方法返回“age = 72”的行。但是,我似乎无法让它发挥作用。有任何想法吗?此外,如果有更好的方法可以在数据表中搜索特定值,而无需遍历整个表即可获得结果,请告诉我。
Imports System.Xml
Module Module1
Sub Main()
Dim settings As New XmlReaderSettings
settings.IgnoreWhitespace = True
settings.IgnoreComments = True
Dim xmlFile As XmlReader
xmlFile = XmlReader.Create("..\..\XMLFile1.xml", settings)
Dim ds As New DataSet
Dim dt As New DataTable
ds.ReadXml(xmlFile)
dt = (ds.Tables("Age"))
dt.TableName = "MainRMDTable"
Dim dtValue() As DataRow
Dim filter As String = "age = 72"
dtValue = dt.Select(filter)
Console.ReadLine()
End Sub
End Module
更新解决方案。
我需要在 72 左右加上单引号。
【问题讨论】:
-
可以显示XMLFile1.xml的内容吗?
-
史蒂夫,我想我明白了。我的过滤器对象中没有 72 左右的单引号。
-
嗯,这就是我要求查看您的文件的原因。如果年龄是一个字符字段,您需要在过滤器字符串中为您的值加上单引号。
标签: xml vb.net search datatable