【发布时间】:2011-01-06 13:55:13
【问题描述】:
考虑以下带有命名空间的XmlDocument:
<Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2005/01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner">
<DataSources>
<DataSource Name="DummyDataSource">
<rd:DataSourceID>a0a7ff0a-a268-4f7e-b949-9427e308468a</rd:DataSourceID>
<ConnectionProperties>
<DataProvider>SQL</DataProvider>
<ConnectString />
</ConnectionProperties>
</DataSource>
</DataSources>
</Report>
我写的,
Dim doc As New XmlDocument
doc.Load("c:\MyXml.xml")
Dim nsm As New XmlNamespaceManager(doc.NameTable)
nsm.AddNamespace("", "http://schemas.microsoft.com/sqlserver/reporting/2005/01/reportdefinition")
nsm.AddNamespace("rd", "http://schemas.microsoft.com/SQLServer/reporting/reportdesigner")
Dim xnd As XmlNode = doc.SelectSingleNode("//DataSources/DataSource/...", nsm)
MessageBox.Show(xnd.Name)
我想读取和修改以下标签(XPath)的值:
//DataSources/DataSource/rd:DataSourceID//DataSources/DataSource/ConnectionProperties/DataProvider
【问题讨论】:
-
您遇到了什么问题?什么错误?有哪些例外?
-
您拥有的代码现在有什么问题?
-
没有任何效果 我的失败尝试仅供参考。
标签: .net xml vb.net xml-namespaces