从XmlNode创建Xdocument对象

从XmlNode创建Xdocument对象,xml,vb.net,linq-to-xml,Xml,Vb.net,Linq To Xml,我调用了一个SOAP/XML类型的web服务,该服务正在成功返回XML响应 到目前为止,我已经设法获取返回的对象,将其强制转换为XmlNode对象。。并按预期找到了其中的实际数据。一切都好 不过,现在我想将数据绑定到Windows窗体中的DataGridView。 我在这里看到了一个很好的例子,它使用XDocument和LINQ为网格提供了一个数据源,这对我来说似乎非常有效 我的问题是,我不知道如何基于调用web服务返回的对象创建XDocument。我该怎么做 这就是我从webservice捕获

我调用了一个SOAP/XML类型的web服务,该服务正在成功返回XML响应

到目前为止,我已经设法获取返回的对象,将其强制转换为XmlNode对象。。并按预期找到了其中的实际数据。一切都好

不过,现在我想将数据绑定到Windows窗体中的DataGridView。 我在这里看到了一个很好的例子,它使用XDocument和LINQ为网格提供了一个数据源,这对我来说似乎非常有效

我的问题是,我不知道如何基于调用web服务返回的对象创建XDocument。我该怎么做

这就是我从webservice捕获返回数据的方式。。哪个有效

' call the webservice  '
Dim rawResults As Object = lw.runQuery(parameter1,parameter2)

Dim testresult As XmlNode = DirectCast(rawResults, XmlNode)

Dim docXml As New XmlDocument
docXml.AppendChild(docXml.ImportNode(testresult, True)).

.etc
下面是Web服务返回的XML。。(每个“runQueryResult”将成为DataGridView中的一行)


513
真空管
0
1.
0
0
0
0
0
5311
适配器扩展
0
1.
0
0
0
0
0
... 等

您可以直接从
XmlNode
创建
XDocument
,因此不必创建
XmlDocument
实例:

Dim xDoc As XDocument = XDocument.Load(New XmlNodeReader(testresults))
Dim xDoc As XDocument = XDocument.Load(New XmlNodeReader(testresults))