XmlAttribute を作成し、それを XmlNode に追加しました。すべて正常に動作します。
同じ XmlAttribute を別の XmlNode に追加しようとすると、追加した最初の XmlNode から属性が盗まれます。
私のシナリオは次のようなものです:
父ノードには能力があり、この能力が利用可能な場合、新しいノードを作成し、この父ノードの子ノードとして設定しました。
親ノードには 3 つの (XYZ) 属性があります。親ノードに能力がある場合は、子ノードを作成し、これらの属性も追加します。
私の問題は、私がするときです:
fatherNode.Attributes.Append(attribute1);
属性はコレクションに追加されますが、後でこれを行うと:
childNode.Attributes.Append(attribute1);
これは、属性を FatherNode から削除し、現在は childNode のみに存在します。
この動作は何ですか? それを避ける方法はありますか?