我开了一张票here,但我希望有人可以相当简单地回答。
YamlDotNet不支持ISerializable,但Json.Net支持ISerializable。因此,作为一种解决方法,我们首先尝试将对象序列化为JObject,这将尊重我们的序列化设置并仅序列化相应的属性。然后,我们想将我们的JObject发送到YamlSerializer,但是我们得到了这个错误:
"对象与目标类型不匹配"
答案 0 :(得分:0)
以下帖子的建议可用作解决方法: How to convert JSON to YAML using YamlDotNet
即。 使用动态Expando对象将JSON转换为YAML。
示例:
var expConverter = new ExpandoObjectConverter();
var jsonString = JsonConvert.SerializeObject(anyObject);
var expandoObject = JsonConvert.DeserializeObject<ExpandoObject>(jsonString, expConverter);
var textInYamlFormat = serializer.Serialize(expandoObject);