gpt4 book ai didi

.net - 从现有的 XDocument 创建新的 XDocument

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

我有一个将 XDocument 对象作为参数的函数。

我需要遍历不同集合中的许多其他对象,并针对这些对象中的每一个,在 XDocument 上执行一些操作。但是 lopp 的每次迭代都需要传递给函数的原始 XDocument 的原始副本。

但是,如果我只是尝试对传递给函数的变量执行我的操作,它的行为就像一个指针 - 所以循环的每次迭代都会收到 XDocument,无论它在上一次迭代结束时处于什么状态,即一点用都没有。

显然我需要复制 Xdocument,但我看不出有什么直接的方法可以做到这一点。尝试:

 XDocument currentServerXml = XDocumentFromFunction.Document():

然后使用 currentServerXml 而不是 XDocumentFromFunction 获得具有相同指针和相同行为的相同副本。

如何为循环的每次迭代创建全新的数据副本?

最佳答案

您正在寻找 XDocument constructor这需要一个 XDocument。这将创建传递的 XDocument 的深拷贝。

示例代码:

var foo_original = XDocument.Load("foo.xml");
var foo_copy1 = new XDocument(foo_original);
var foo_copy2 = new XDocument(foo_original);

关于.net - 从现有的 XDocument 创建新的 XDocument,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4745516/

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