Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Can';t在XmlDocument中向XmlNode添加前缀_C#_Xml_Xml Namespaces_Xmldocument - Fatal编程技术网

C# Can';t在XmlDocument中向XmlNode添加前缀

C# Can';t在XmlDocument中向XmlNode添加前缀,c#,xml,xml-namespaces,xmldocument,C#,Xml,Xml Namespaces,Xmldocument,我一整天都在寻找解决办法,但到目前为止什么都帮不了我 我正在迭代XmlDocument中的所有节点,如下所示: // iterate through xml soapEnvelopeXml.IterateThroughAllNodes( delegate (XmlNode node) { if(String.IsNullOrEmpty(node.Prefix)) node.Prefix = "urn"; });

我一整天都在寻找解决办法,但到目前为止什么都帮不了我

我正在迭代XmlDocument中的所有节点,如下所示:

    // iterate through xml
    soapEnvelopeXml.IterateThroughAllNodes(
    delegate (XmlNode node)
    {
        if(String.IsNullOrEmpty(node.Prefix))
            node.Prefix = "urn";
    });   
在遍历每个节点时,我注意到一个节点没有名称空间URI

这就是我无法将前缀添加到节点的原因吗?此外,如果是这种情况,当名称空间URI是只读属性时,如何更改它


这是命名空间URI:
“urn:nl:portal:service:fileuploadnotification:env:1”

必须添加命名空间。前缀将自行添加。向我们显示原始xml和所需的xml。文档必须遵循URI的架构。如果模式没有节点的前缀,则不能只添加前缀。文档是否符合架构?使用web上的检查器进行测试。我想我已经得出一个结论,当您序列化根节点时,它不能包含名称空间URI。显然,只有子节点将获得分配的NamespaceURI。我创建了一个名为RootXML的类,并添加了名称空间,该名称空间包含需要URI前缀的对象。可能不是最好的解决方案,但目前它仍然有效。