重複の可能性:
LINQ to XMLを使用してCDataを含める方法は?
約1か月前に、WebサービスのCDATAタグ内にいくつかのデータをラップすることについての投稿を書きました(これは私の要件ではなく、それらの要件です)。私はたくさんのトラブルシューティングを行い、いくつかの結果を提供する例に取り組みました。(クラスをXMLにシリアル化し、コードと結果のCDATAセクションを含める際の問題の投稿を参照してください)
今、私はクラスの設計が控えめに言ってもひどいことに気づき、以前に書いたコードのほとんどを書き直しました。そのため、以前と同じ質問に戻るには時間がかかりました。
投稿を簡潔にするために、新しい質問をして、古い質問はそのままにしておくことにしました。
私の(改訂された)質問
XmlDocumentを使用してCDATAセクションまでの要素を作成してから、このCreateCDataSection()
メソッドを使用して以下のようにCDATAセクションを作成できますか?
<UpdateOrderStatus>
<Action>2</Action>
<Value>
<![CDATA[
<Shipment>
<Header>
<SellerID>
...
]]>
</Value>
</UpdateOrderStatus>
既存のオブジェクトを適切なXMLフラグメントにシリアル化することはできますが、このコードが正しいかどうか、またはより良い方法があるかどうかは100%確実ではありません。
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.CreateDocumentFragment();
xmlDoc.CreateElement("Shipment");
xmlDoc.CreateElement("Action");
xmlDoc.CreateTextNode("2");
xmlDoc.CreateElement("Value");
xmlDoc.CreateCDataSection(orderToUpdate);
これをプログラミングしているとしたら、どうしますか?概念がそのようにしか示されない限り、私は必ずしもコードを必要としません。クラス名、またはMSDNリファレンスなどで問題ありません