gpt4 book ai didi

c# - 我可以将 BaseUri 分配给 XDocument 吗?

转载 作者:数据小太阳 更新时间:2023-10-29 01:55:11 25 4
gpt4 key购买 nike

当我将 XML 文档从磁盘加载到 XDocument 时,该 XDocument 有一个只读属性 BaseUri,它包含原始 XML 文档在磁盘上的位置。换句话说,

XDocument doc = XDocument.Load(@"c:\temp\doc.xml");
Console.Out.WriteLine(doc.BaseUri);
// Outputs "file:///c:/temp/doc.xml"

如果我从头开始创建一个新的 XDocument,它没有 BaseUri。例如:

XDocument doc = new XDocument(new XElement("test"));
Console.Out.WriteLine(doc.BaseUri);
// Outputs nothing

我可以为这个新的 XDocument 分配一个 BaseUri 吗?我希望能够生成新文档,为它们分配名称,并轻松地将这些名称与它们一起传递。

最佳答案

据我所知,您无法轻易做到这一点。如果您设置了适当的选项,则可以在加载任何 XmlReader 时执行此操作。这意味着您可以编写一个扩展方法,将其保存到 MemoryStream,然后从派生自 XmlTextReader 的自定义类加载新文档,该自定义类覆盖 BaseUri。不过那会很丑:(

关于c# - 我可以将 BaseUri 分配给 XDocument 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1440023/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com