2017-02-18 3 views
0

Ich habe ein YAML Dokument:Unterstützung für mehrere Aliase in yamldotnet Deserialisierung

name: foo 
description: bar 

und andere YAML Dokument:

name: foo1 
desc: bar1 

I YamlDotNet YamlMember 'Alias' Eigenschaft bin mit dem Attribut zu definieren, Name. Aber ich kann nur einen Alias ​​definieren. Ich möchte "description" und "desc" auf eine einzelne Variable deserialisieren. Beide können nicht gleichzeitig in der YAML-Datei vorhanden sein. Kann ich das irgendwie erreichen?

Antwort

0

Das ist nicht möglich, nur mit YAML. Anker (und deren Verwendung als Aliase) werden nicht vom YAML-Dokument zum YAML-Dokument innerhalb einer Datei übertragen, also sicher nicht von YAML-Dokumenten in verschiedenen Dateien.

Sie können versuchen, nach dem Laden des YAML selbst einige Nachbearbeitungen durchzuführen, aber während dieser Nachbearbeitung können Sie wahrscheinlich keine Aliasnamen wie "anchor names are a serialization detail and are discarded once composing is completed" verwenden. Sie müssten also eine eindeutige Zeichenfolgevorlage oder spezielle Alias-Objekte suchen in den Objektbäumen, die von YAML geladen wurden.

Verwandte Themen