在yamldotnet反序列化中支持多个别名

在yamldotnet反序列化中支持多个别名,yaml,yamldotnet,Yaml,Yamldotnet,我有一份YAML文件: name: foo description: bar name: foo1 desc: bar1 另一份YAML文件如下: name: foo description: bar name: foo1 desc: bar1 我正在使用YamlDotNet YamlMember“Alias”属性定义属性名。但它只允许我定义一个别名。我希望“description”和“desc”反序列化为单个变量。这两者不能同时出现在YAML文件中。有什么方法可以实现这一点吗?仅使用Y

我有一份YAML文件:

name: foo
description: bar
name: foo1
desc: bar1
另一份YAML文件如下:

name: foo
description: bar
name: foo1
desc: bar1

我正在使用YamlDotNet YamlMember“Alias”属性定义属性名。但它只允许我定义一个别名。我希望“description”和“desc”反序列化为单个变量。这两者不能同时出现在YAML文件中。有什么方法可以实现这一点吗?

仅使用YAML是不可能的。锚定(以及它们作为别名的使用)不会在一个文件中从YAML文档传递到YAML文档,因此肯定不会从不同文件中的YAML文档传递

加载YAML后,您可以尝试自己进行一些后处理,但在后处理过程中可能无法使用别名,因此您必须选择一些独特的字符串模板或特殊的别名对象,这些对象可以在从YAML加载的对象树中轻松找到