Sto tentando di deserializzare alcuni XML da un servizio Web in P # COC. Ho questo funzionamento per la maggior parte delle proprietà di cui ho bisogno, tuttavia, ho bisogno di impostare una proprietà bool in base al fatto che un elemento sia presente o meno, ma non riesco a vedere come farlo?Deserializzare la presenza dell'elemento XML in bool in C#
Un frammento di esempio XML:
<someThing test="true">
<someThingElse>1</someThingElse>
<target/>
</someThing>
Un esempio C# classe:
[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; }
}
Questo è un esempio molto semplificato della gerarchia XML e l'oggetto reale io sono l'elaborazione, ma dimostra quello che ho sto cercando di ottenere.
Tutte le altre domande che ho letto relative alla deserializzazione di elementi null/vuoti sembrano implicare l'uso di Nullable<T>
, che non fa ciò di cui ho bisogno.
Qualcuno ha qualche idea?
Grazie, era troppo pensieroso :) –