カラーフォーマットに関する基本情報を格納するColorFormat
クラスがあります。その目的は、XMLとの間でシリアライズおよびデシリアライズを行うことです。赤、緑、青、私は特別な色の文字列識別子を使用して表現するために:「#RGB」のような形式の場合XmlSerializerでのカスタムXML特殊文字の作成と使用
public const string RedColorIdentifier = "&red;";
public const string GreenColorIdentifier = "&green;";
public const string BlueColorIdentifier = "&blue;";
を、クラスのフォーマット文字列は、次のような次のとおりです。
colorFormat.Format = "#" + ColorFormat.RedColorIdentifier +
ColorFormat.GreenColorIdentifier +
ColorFormat.BlueColorIdentifier;
理想的には、シリアル化されたXML次のようになります。
<ColorFormat Name="HexFmt" ColorBase="Hex">#&red;&green;&blue;</ColorFormat>
実際のシリアル化がある:
<ColorFormat Name="HexFmt" ColorBase="Hex">#&red;&green;&blue;</ColorFormat>
「シリアライズとデシリアライズ」の方法がある場合、私は、独自のカスタムXMLの特殊文字は、あなたが特殊文字をラップするCData
を使用することができます
「CDATA」[CDATAセクション](https://msdn.microsoft.com/en-us/library/ms256076(v = vs.110).aspx) – Fabio
XML '#&red; &green; &blue; ColorFormat> 'は無効です。例えば。 http://www.xmlvalidation.com/にアップロードするとエラーが発生します*** XMLドキュメントのエラー:** 1:エンティティ "red"は参照されましたが、宣言されていません* –
dbc
'&text; ' - xml [entity](https://en.wikipedia.org/wiki/Document_type_definition#Entity_declarations)です。そのような実体を使用しないでください。 '&'の代わりに他のシンボルを使用してください。 –