Zo gebruik je XML to C#
- Plak een representatief XML-voorbeeld, bij voorkeur een met alle optionele velden ingevuld.
- Stel de naam van het roottype in en bepaal of je ook hulpcode wilt of alleen types.
- Kopieer de gegenereerde C#-code naar je project.
Over XML to C#
Modelklassen met de hand schrijven voor een grote XML-payload is saai en daar sluipen typefouten in. Plak hier een voorbeeld en de generator leidt de structuur af: welke velden er zijn, welke objecten zijn, welke arrays en welk type elke waarde heeft. De uitvoer bestaat uit klassen met properties. Haal het vinkje bij "Alleen types" weg en de uitvoer voegt Newtonsoft.Json-attributen en een Converter-klasse toe.
XML wordt eerst op dezelfde manier naar JSON geconverteerd als in onze XML to JSON-tool: attributen krijgen een @_-voorvoegsel en tekstinhoud naast attributen heet #text. De C#-types worden uit dat resultaat gegenereerd. Propertynamen worden omgezet naar PascalCase en voorzien van een JsonProperty-attribuut zodat de oorspronkelijke sleutel behouden blijft.
De gegenereerde code gebruiken
Roep met de hulpfuncties Root.FromJson(json) aan. Gebruik bij alleen types JsonSerializer.Deserialize<Root>(json) uit System.Text.Json en voeg attributen toe als de namen verschillen.
Leden die null kunnen zijn gebruiken long?, double? enzovoort, plus nullable referentietypes waar relevant.