我有一个函数将XDocument对象作为参数.
我需要循环遍历不同集合中的其他对象,并为其中的每个对象循环,对XDocument执行一些操作.但是lopp的每次迭代都需要原始XDocument的原始文件,该文件传递给该函数.
但是,如果我只是尝试对传入函数的变量执行我的操作,它的行为就像一个指针 – 所以循环的每次迭代都会在最后一次迭代结束时留下的任何状态接收XDocument,所有.
显然,我需要复制Xdocument,但是我看不到这样做的直截了当的方式.试:
XDocument currentServerXml = XDocumentFromFunction.Document():
然后使用currentServerXml而不是XDocumentFromFunction获得与同一个指针相同的副本和相同的行为.
如何为循环的每个迭代创建一个全新的数据副本?
您正在寻找需要XDocument的XDocument
constructor.这将创建传递的XDocument的深层副本.
示例代码:
var foo_original = XDocument.Load("foo.xml"); var foo_copy1 = new XDocument(foo_original); var foo_copy2 = new XDocument(foo_original);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。