var user1 = new User { Name = "Donma", Age = 20, Birth = DateTime.Now, Key = "Key1", Salary = 1999.987654321m };
user1.Friends = new System.Collections.Generic.List();
user1.Friends.Add(new User { Name = "Donma Friend1", Age = 29, Birth = DateTime.Today, Key = "Key2", Salary = 2999.29000000m });
var serializer = new YamlDotNet.Serialization.SerializerBuilder().Build();
var yamlString1 = serializer.Serialize(user1);
Console.WriteLine(yamlString1);
Key: Key1
Name: Donma
Salary: 1999.987654321
Birth: 2021-02-03T11:24:47.2097392+08:00
Age: 20
Friends:
- Key: Key2
Name: Donma Friend1
Salary: 2999.29000000
Birth: 2021-02-03T00:00:00.0000000+08:00
Age: 29
Friends:
public class User
{
public string Key { get; set; }
public string Name { get; set; }
public decimal? Salary { get; set; }
public DateTime Birth { get; set; }
public int Age { get; set; }
public List Friends { get; set; }
}
2. 反序列化:
var deSerializer = new YamlDotNet.Serialization.DeserializerBuilder().Build();
var user2=deSerializer.Deserialize(yamlString1);
Console.WriteLine(user2.Key+","+user2.Name+","+user2.Friends.Count);
//Result
//Key1,Donma,1