私は次のように新しいXDocumentを作成しようとしています:XDocumentの独立したコピーを取得するには?
var xmlString = _documentDictionary[documentKey].ToString(SaveOptions.DisableFormatting);
XDocument xml = XDocument.Parse(xmlString);
私は今、私は元の文書から文字列を抽出して作成したので、私も持っているだろうxml
は、文書のスタンドアロンインスタンスだった持っていますそれからの新しいもの。
しかし、xml
を変更して_documentDictionary[documentKey]
を調べると、元のドキュメントも変更されていることがわかります。
私が持っている既存のコレクションから新しい独立したドキュメントを取得するにはどうすればよいですか?
注:
私はこれらを試してみたが、それは動作しません:
var xmlString = _documentDictionary[documentKey].ToString(SaveOptions.DisableFormatting);
var copyDoc = new XDocument(xmlString);
と
var copyDoc = new XDocument(_documentDictionary[documentKey]);
私はそれを試みましたが、うまくいかないようです。私は別のショットを与えるでしょう。 – DaveDev
+1はそれについて知らなかった –
何か変わったことが起こっている。私はちょうどあなたのテストを試して、それは動作しますが、私は自分のオブジェクトでそれを試してみると失敗しています。私は新しい文書を作成してそれを修正し、記述したようにルート名を変更すると、元の文書で更新されていることがわかります。 – DaveDev