C# 使用XmlElement创建带有前缀的xmlns
我想用以下结构创建一个C# 使用XmlElement创建带有前缀的xmlns,c#,xml,dom,C#,Xml,Dom,我想用以下结构创建一个dom <CreateImport xmlns:i="http://www.w3.org/2001/XMLSchema-instance"> <XmlData> ...other child nodes </XmlData> </CreateImport> 但是现在我的xmlns有一个前缀i,我想通过编程将其添加到我的XmlDocument。 我对XElementvsxmlement感到困惑。前者不能有类型为xm
dom
<CreateImport xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<XmlData>
...other child nodes
</XmlData>
</CreateImport>
但是现在我的xmlns
有一个前缀i
,我想通过编程将其添加到我的XmlDocument
。
我对
XElement
vsxmlement
感到困惑。前者不能有类型为xmlement
XDocument
,XElement
等的子级在Linq To XML中使用。但在我看来,它们也可以用XmlDocument
以更简单的方式创建XML文档。在您的情况下,您可以这样写:
XElement root = new XElement("CreateImport", new XAttribute(XNamespace.Xmlns + "i", "http://www.w3.org/2001/XMLSchema-instance"),
new XElement("XmlData",
new XElement("Child1"),
new XElement("Child2")));
您可以使用root.Save(“myxml.xml”)
将其保存到文件中。这将创建以下XML:
<?xml version="1.0" encoding="utf-8"?>
<CreateImport xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
Content
</CreateImport>
内容
您可以阅读更多详细信息和示例。好的,谢谢。但是如何将
XmlData
元素作为子元素添加?我不会把这些文件保存在任何地方。我必须将其作为字符串发送到web服务。我已经编辑了我的答案。但更多详情请参见随附的链接。如果答案对你有帮助,请投票并接受。
<?xml version="1.0" encoding="utf-8"?>
<CreateImport xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
Content
</CreateImport>