C# XMLWriter 创建 WriteAttributeStringAsync
Posted
技术标签:
【中文标题】C# XMLWriter 创建 WriteAttributeStringAsync【英文标题】:C# XMLWriter create WriteAttributeStringAsync 【发布时间】:2021-12-29 08:34:52 【问题描述】:有谁知道我如何用 XMLWriter 写出这行代码?
<TextChild xmlns:dt="urn:schemas-microsoft-com:datatypes" dt:dt="string">User defined 3</TextChild>
这里的问题是 xmlns:dt 和 dt:dt。
错误消息:“dt”是重复的属性名称。
await writer.WriteStartElementAsync(string.Empty, "TextChild", string.Empty);
await writer.WriteAttributeStringAsync("xmlns", "dt", string.Empty, "urn:schemas-microsoft-com:datatypes");
await writer.WriteAttributeStringAsync("dt", "dt", string.Empty, "boolean");
await writer.WriteStringAsync(name);
await writer.WriteEndElementAsync();//TextChild
【问题讨论】:
【参考方案1】:xmlns:dt
是一个命名空间定义。这不是属性。
它不需要手动创建。创建属性时指定命名空间即可。
await writer.WriteStartElementAsync(null, "TextChild", null);
await writer.WriteAttributeStringAsync("dt", "dt", "urn:schemas-microsoft-com:datatypes", "string");
await writer.WriteStringAsync(name);
await writer.WriteEndElementAsync();
【讨论】:
以上是关于C# XMLWriter 创建 WriteAttributeStringAsync的主要内容,如果未能解决你的问题,请参考以下文章
如何在 .NET 中使用 XmlWriter 创建 XmlDocument?