1

これは少しコードの臭いかもしれませんが、 XMLドキュメントを作成するときに、 XmlDocumentではなくStringBuilderを使用する、実稼働コードであることがわかりました。場合によっては、これらはライトワンス操作(たとえば、ドキュメントを作成してディスクに保存する)であり、他の場合は、作成された文字列をXmlDocumentに渡して、クライアントに返されるドキュメントにXslTransformを実行します。

非常に明白な質問です。このように物事を行うことにはメリットがありますか、それはケースバイケースで行われるべきものですか、それともこれは物事を行う間違った方法ですか?

4

2 に答える 2

6

XMLTextWriterを使用してXMLドキュメントを作成することをお勧めします(MSDNからの引用)。

W3C Extensible Markup Language(XML)1.0およびXML推奨の名前空間に準拠するXMLデータを含むストリームまたはファイルを生成する高速でキャッシュされていない転送専用の方法を提供するライターを表します。

私はこれを何度も使用しました。XMLDocumentを使用するよりもパフォーマンスが高く、StringBuilderでは得られないXMLの安全性を備えています。

于 2010-04-22T14:19:20.500 に答える
2

XmlDocumentは、XMLの作成に使用するのが面倒なので、ほとんどの人はわざわざXMLを使用する必要はありません。StringBuilderは軽量ですが、XMLを認識しないため、構造をまったく検証しません。LINQ to XMLを使用すると、両方の長所を活用できます。それはあなたが多くの間抜けなオーバーヘッドなしで簡単に有効なXMLを作成することを可能にします。XMLを作成するためのLinqtoXMLの使用に慣れていない場合は、この記事を確認してください。

于 2010-04-22T14:06:58.777 に答える