一部のXMLをWebサービスからC#POCOに逆シリアル化しようとしています。必要なほとんどのプロパティでこれが機能していますが、要素が存在するかどうかに基づいてboolプロパティを設定する必要がありますが、これを行う方法がわかりませんか?
XMLスニペットの例:
<someThing test="true">
<someThingElse>1</someThingElse>
<target/>
</someThing>
C#クラスの例:
[Serializable, XmlRoot("someThing")]
public class Something
{
[XmlAttribute("test")]
public bool Test { get; set; }
[XmlElement("someThingElse")]
public int Else { get; set; }
/// <summary>
/// <c>true</c> if target element is present,
/// otherwise, <c>false</c>.
/// </summary>
[XmlElement("target")]
public bool Target { get; set; }
}
これは、私が処理している実際のXMLとオブジェクト階層の非常に単純化された例ですが、私が達成しようとしていることを示しています。
null /空の要素の逆シリアル化に関連して私が読んだ他のすべての質問は、の使用に関係しているようですがNullable<T>
、これは私が必要とすることを行いません。
誰かアイデアはありますか?