c# を使用して cdata セクションをシリアル化する際に問題が発生しています
XmlCDataSection オブジェクト プロパティを要素の内部テキストとしてシリアル化する必要があります。
私が探している結果はこれです:
<Test value2="Another Test">
<![CDATA[<p>hello world</p>]]>
</Test>
これを生成するために、私はこのオブジェクトを使用しています:
public class Test
{
[System.Xml.Serialization.XmlText()]
public XmlCDataSection value { get; set; }
[System.Xml.Serialization.XmlAttributeAttribute()]
public string value2 { get; set; }
}
value プロパティで xmltext 注釈を使用すると、次のエラーがスローされます。
System.InvalidOperationException: プロパティ '値' を反映するエラーが発生しました。---> System.InvalidOperationException: System.Xml.XmlCDataSection 型のメンバー '値' をシリアル化できません。XmlAttribute/XmlText を使用して複合型をエンコードすることはできません
注釈をコメントアウトすると、シリアライゼーションは機能しますが、cdata セクションが値要素に配置されます。これは、私がやろうとしていることには適していません。
<Test value2="Another Test">
<value><![CDATA[<p>hello world</p>]]></value>
</Test>
これを機能させるための正しい方向に誰かが私を向けることができますか?
ありがとう、アダム