【问题标题】:ActiveX XML DOM SetProperty in .NET XmlDocument-Object.NET XmlDocument-Object 中的 ActiveX XML DOM SetProperty
【发布时间】:2014-08-29 08:54:12
【问题描述】:

我正在将我们公司使用 XML DOM 的一些旧代码从 ActiveXObject('Microsoft XML,v6.0'.DOMCocument60)翻译成 .NET XML 文档(System.Xml.XmlDocument)

我对 XML 的细节不是很熟悉,但我可以告诉你(希望对您有所帮助)

我需要替换这个序列:

DOMIn.setProperty('SelectionNamespaces','xmlns:def="' + DOMIn.documentElement.namespaceURI + '"');
NodeList := DOMIn.selectNodes('//def:Parameters');
RootNode := NodeList.item(0);

它用于处理由 WebService 传入的 XML 文件。 DOMIn 是传入的 XML 对象。我希望其他变量是自我解释的。

所以我自己想出来的是,在我们收到要使用 XPath 的对象后,我必须设置“def”命名空间。但我不知道在.NET XmlDocument 中是如何做到的。它实际上只是关于第一行。一旦我用大写字母开始方法,其他人应该没问题。

请不要怀疑 Synthax 这种语言称为 C/AL - 非常专有。但是我们现在可以实现 .Net DLL,这就是我当前的任务。

你能帮帮我吗?

【问题讨论】:

    标签: .net xml xpath activexobject


    【解决方案1】:

    使用 XmlNamespaceManager 例如

    NsMgr := New XmlNamespaceManager(DOMIn.NameTable)
    NsMgr.AddNamespace("def", DOMIn.DocumentElement.NamespaceURI)
    
    NodeList := DOMIn.SelectNodes("//def:Parameter", NsMgr)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-20
      相关资源
      最近更新 更多