C# YamlDotNet ライブラリ http://www.aaubry.net/page/YamlDotNetに問題があります
ライブラリが「マージキー」をサポートしているかどうか知っていますか? http://yaml.org/type/merge.html
これは私にはうまくいかないようです。PyYaml などの他のライブラリでは、マージは正常に機能します。
C# YamlDotNet ライブラリ http://www.aaubry.net/page/YamlDotNetに問題があります
ライブラリが「マージキー」をサポートしているかどうか知っていますか? http://yaml.org/type/merge.html
これは私にはうまくいかないようです。PyYaml などの他のライブラリでは、マージは正常に機能します。
YamlDotNet でマージ キーがサポートされるようになりました。
例:
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
マージ キーは (まだ) サポートされていません。これは計画された機能ですが、現時点では自分で実装する必要があります。