c# - 将 XML 字符串添加到 XElement

标签 c# .net xml xelement

您好,我需要从一个字符串创建一个 XElement,它可以是 xml 或纯字符串。

这段代码

    var doc = new XDocument(
        new XElement("results", "<result>...</result>")
    );

产生这个

<results>&lt;result&gt;&lt;/result&gt;</results>

但是如果字符串是 XML,那么我需要适当的 XMl

<results><result>...</result></results>

除了 XElement.Parse() 之外还有其他想法吗,因为如果它是纯文本,它会抛出异常?

最佳答案

请参阅我在 Is there an XElement equivalent to XmlWriter.WriteRaw? 上的回答

基本上,仅当您知道内容已经是有效的 XML 时才替换内容的占位符

var d = new XElement(root, XML_PLACEHOLDER);
var s = d.ToString().Replace(XML_PLACEHOLDER, child);

这种方法也可能更快。

关于c# - 将 XML 字符串添加到 XElement,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16586443/

相关文章:

c# - 由于超时已到.net core,执行 DbCommand 失败

c# - 无法访问 .net 标准中的 httpcontext 扩展方法

mysql - 在 Windows Server 2012 R2 上安装 C++ Redistributable 2015 时出错

c# - C# 中并发异步读取单个文件中多个位置的推荐方法

c# - Redis session 状态提供程序 - 设置操作区分大小写?

.net - 如何获取 Windows 区域位置设置?

.net - 如何中止 HTTP 发布而不读取其完整内容(.NET REST 服务)

使用 XSLT 将 XML 转换为 CSV

Java 8 字符串内存不足错误

c# - 从 C# 调用 web 服务并发送未转义的 xml