CSharp · Console
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using YamlDotNet.Core;
using YamlDotNet.Core.Events;
using YamlDotNet.Serialization;
using YamlDotNet.Serialization.NamingConventions;
namespace YamlDotNet.Samples
{
public class DeserializeObjectGraph
{
public void Main()
{
var input = new StringReader(Document);
var deserializer = new Deserializer();
var reader = new EventReader(new Parser(input));
// Consume the stream start event "manually"
reader.Expect<StreamStart>();
while(reader.Accept<DocumentStart>())
{
// Deserialize the document
var doc = deserializer.Deserialize<List<string>>(reader);
Console.WriteLine("## Document");
foreach(var item in doc)
{
Console.WriteLine(item);
}
}
}
private const string Document = @"---
- Prisoner
- Goblet
- Phoenix
---
- Memoirs
- Snow
- Ghost
...";
}
}