小编Kei*_*ith的帖子

使用PowerShell,如何添加多个名称空间(其中一个是默认名称空间)?

我有一个包含两个命名空间的XML文档('default'命名空间和xlink):

  • 的xmlns = "HTTP://大使馆/模式/ dudezilla /"
  • 的xmlns:的xlink = "http://www.w3.org/1999/xlink"

如何在PowerShell代码中指定"两个"命名空间?PowerShell似乎需要默认命名空间的前缀.我该怎么做呢?

现在我有以下代码(不确定要为默认命名空间包含什么):

    [System.Xml.XmlNamespaceManager] $nsmgr = $xml.NameTable;
    $nsmgr.AddNamespace('?','http://embassy/schemas/dudezilla/');
    [System.Xml.XmlNamespaceManager] $nsmgr = $xml.NameTable;
    $nsmgr.AddNamespace('xlink','http://www.w3.org/1999/xlink');

    [System.Xml.XmlNodeList] $nodelist;
    [System.Xml.XmlElement] $root = $xml.DocumentElement;
    $nodelist = $root.SelectNodes("//image/@xlink:href", $nsmgr);

    Foreach ($xmlnode in $nodelist)
    {
        $xmlnode.Value;
    }
Run Code Online (Sandbox Code Playgroud)

谢谢!

powershell namespaces

11
推荐指数
2
解决办法
1万
查看次数

标签 统计

namespaces ×1

powershell ×1