如何将 YamlDocument 序列化为 yaml 字符串

how to serialize a YamlDocument to yaml string

我使用 YamlDotnet 并且我有一个 YamlDocument。现在我想将它转换为他在内存中的 yaml 文本表示,但我不知道如何实现。

var yaml = new YamlDocument(new YamlMappingNode());
yaml.Add("one", "other")
var text = yaml.ToYamlText()

我应该在文本中输入类似的内容:

one: "other"

我尝试了 zith Serializer class 但没有成功

好的,所以我在源代码的单元测试中找到了解决方案:

var yaml = new YamlDocument(new YamlMappingNode());
yaml.Add("one", "other");
var yamlStream = new YamlStream(yaml);
var buffer = new StringBuilder();
using (var writer = new StringWriter(buffer))
{
    yamlStream.Save(writer);
    yamlText = writer.ToString();
}

无论如何,我现在有另一个问题,我需要我所有的值都用双引号引起来。在另一个应用程序中,我使用了 QuoteSurroundingEventEmitter :带有对象图序列化的 ChainedEventEmitter。但是对于 yamlStream.Save() 我不知道如何实现这个机制