У меня есть функция, которая принимает в качестве аргумента объект XDocument.
Мне нужно перебрать ряд других объектов в другой коллекции и для каждого из этих объектов выполнить некоторые действия с XDocument. Но каждая итерация lopp нуждается в оригинальной копии оригинального XDocument, который передается функции.
Однако, если я просто пытаюсь выполнить свои операции над переменной, переданной в функцию, она ведет себя как указатель - поэтому каждая итерация цикла получает XDocument в любом состоянии, в котором он был оставлен в конце последней итерации, которая является бесполезно.
Очевидно, мне нужно сделать копию Xdocument, но я не вижу простого способа сделать это. Попытка:
XDocument currentServerXml = XDocumentFromFunction.Document():
А затем, используя currentServerXml вместо XDocumentFromFunction, я получаю ту же копию с тем же указателем и тем же поведением.
Как создать новую копию данных для каждой итерации цикла?