我一直在尝试使用 yamlserializer 库构建 YAML 节点。但是我在构建 LINQ 语句时遇到了困难。
我有一个“Category”对象列表,我们称之为“Cats”,Category 类有一个 Id 和一个 Name,需要用以下方式表示为 Yaml 映射。Cats[0].Id : Cats[0]Name Cats[1].Id : Cats[1].Name ...
对于那些没有与图书馆合作过的人。YamlMapping 类有一个构造函数,它接受一个 YamlNode 对象数组。YamlNode 是一个抽象类,包括 YamlMapping 在内的所有类型的节点都从该类继承。
new YamlMapping
(
"Categories", new YamlMapping (
(from cat in blacklist.Categories.List select
(YamlNode)cat.Id AND (YamlNode)cat.Name).ToArray());
)
以上显然不起作用,我想知道是否有任何方法可以达到预期的结果。可以事先构造数组,但想知道是否有更多 LINQish (?) 方式来实现相同的效果。
换句话说,数组构建必须是这样的。
YamlNode[] arr;
arr[0] = Cats[0].Id
arr[1] = Cats[0].Name;
arr[2] = Cats[1].Id;
arr[3] = Cats[1].Name;
......