c# - C# YamlDotNet 库是否支持合并 key ?

标签 c# yamldotnet

我对 C# YamlDotNet 库有疑问 http://www.aaubry.net/page/YamlDotNet

您知道图书馆是否支持“合并键”吗? http://yaml.org/type/merge.html

这似乎对我不起作用。 在 PyYaml 等其他库中,合并工作正常。

最佳答案

编辑

YamlDotNet 现在支持合并键。

Example :

using System;
using System.IO;
using System.Collections.Generic;
using YamlDotNet.Serialization;
using YamlDotNet.Core;

public class Program
{
    public static void Main()
    {
        var yaml = @"
anchor: &default
  key1: &myValue value1
  key2: value2
alias:
  <<: *default
  key2: Overriding key2
  key3: value3
";

        var reader = new EventReader(new MergingParser(new Parser(new StringReader(yaml))));

        var deserializer = new Deserializer();
        var result = deserializer.Deserialize<Dictionary<string, Dictionary<string, string>>>(reader);

        var alias = result["alias"];
        Console.WriteLine("key1 = {0}", alias["key1"]);
        Console.WriteLine("key2 = {0}", alias["key2"]);
    }
}

输出:

key1 = value1
key2 = Overriding key2

(尚)不支持合并键。这是一项计划中的功能,但现在您必须自己实现。

关于c# - C# YamlDotNet 库是否支持合并 key ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18894610/

相关文章:

c# - 将 YAML 反序列化为自定义类型

c# - 如何使用 YamlDotNet 将 YAML 解析为派生集合?

java - YamlDotNet:如何处理!!set

c# - 监控应用程序内存使用情况的正确方法是什么?

c# - 我在 asp.net 2.0 中的 session 变量有问题

c# - Entity Framework Core 从现有数据库创建模型

c# - 如何将 protobuf 序列化内容直接写入 SharpZipLib 流

yaml - 使用 YamlDotNet 序列化动态模型时更改用于所有多行字符串的标量样式

c# - 寻求使用 C# 读取 .yaml 文件的指导

c# - NHibernate 两列同时作为复合键和外键