2017-02-18 18 views
0

我有一个YAML文档:支持在yamldotnet反序列化多个别名

name: foo 
description: bar 

和另一个YAML文件为:

name: foo1 
desc: bar1 

我使用YamlDotNet YamlMember“别名”属性来定义属性名称。但它让我只定义一个别名。我想要“描述”和“desc”反序列化为一个变量。两者都不能同时出现在YAML文件中。有什么办法可以达到这个目标吗?

回答

0

这是不可能的,只是使用YAML。锚(以及它们作为别名的使用)不会从一个文件中从YAML文档转移到YAML文档,因此当然不能从YAML文档中转移到不同文件中。

加载YAML后,您可以尝试自己做一些后处理,但在后处理过程中可能无法使用别名"anchor names are a serialization detail and are discarded once composing is completed",因此您必须使用一些独特的字符串模板或特殊的别名对象,在从YAML加载的对象树中。