1

私の関数は、 のインスタンスのすべてのノードを反復処理しますXMLDocument。現在のノードの名前がルックアップ リストにあるかどうかを確認します。そうである場合、現在のノードの値に適切な検証が適用されます。

値が変更されていることを検証メソッドが示している場合、元のドキュメントの値を更新された値に置き換えたいと考えています。

これを実現する最も簡単な方法XMLTextWriterは、元の の各ノードを処理するときに、元XMLDocumentのノードまたは変更されたノードと値を適切に書き出すことです。このメソッドは、現在のノードに子があるかどうか、またはスタンドアロン ノードであるかどうかの判断に依存します。

元のドキュメントの値を更新するより良い方法はありますか? 最終的には完全な が必要ですが、必要に応じてXMLDocumentノード値が更新されます。

前もって感謝します。

4

2 に答える 2

3

既存のノードを変更することはできませんか (正しい構造と XMLDocument で既に使用されているため、XMLDocument を再シリアル化しますか? ノードが単純なテキスト コンテナーの場合、

.InnerText

プロパティはあなたが望むものです。

于 2008-12-02T11:47:43.743 に答える
1

私はいつもこれに戻ってきますが、これは XSLTで apply-templates とExtensionObjectsを巧みに使用することが効率的である例のように思えます。

つまり、XMLDocument は変更用に最適化されているため、純粋なプログラム ソリューションを使用する場合は、新しい Writer を作成するのではなく、オブジェクトを直接変更します。

于 2008-12-02T11:48:24.053 に答える