serialization - 如何使用 YamlDotNet 序列化对象树
问题描述
我有以下课程:
public class MenuItem
{
public string Title { get; set; }
public List<MenuItem> Items { get; set; }
public MenuItem()
{
Items = new List<MenuItem>();
}
}
如何正确序列化它?
阿德里安·塔尼塞鲁
我创建了一个 MenuItem 对象树,并想用 YamlDotNet 对其进行序列化,但结果出乎意料。
MenuItem _root = new MenuItem() { Title = "Menu" };
MenuItem childItem1 = new MenuItem() { Title = "Child item #1" };
childItem1.Items.Add(new MenuItem() { Title = "Child item #1.1" });
childItem1.Items.Add(new MenuItem() { Title = "Child item #1.2" });
_root.Items.Add(childItem1);
_root.Items.Add(new MenuItem() { Title = "Child item #2" });
var serializer = new Serializer();
string fileContent = serializer.Serialize(_root);
using (StreamWriter writer = new StreamWriter("Menu.yaml"))
{
writer.Write(fileContent);
}
结果是:
...
bu 我希望在 Yaml 中有一个 MenuItems 树。
解决方案
推荐阅读
- android - 纬度经度未出现
- javascript - 如何在加载代码时在 Javascript 中获取用户的输入。
- docker - 如何将 VM 映像转换为 dockerfile?
- iis - TFS 2018 发布管理到 IIS
- javascript - 异步更新数组项 - 手表不触发
- android - 底部导航项菜单自定义背景
- filter - PowerBuilder - SetFilter(string) 出错 - 表达式无效
- azure - Azure AD 删除已注册应用的权限
- javascript - SVG 动画不适用于 mozilla,但适用于 chrome 和 safari
- python - 更新 Python 列表的正确方法是什么?