C# Ошибка Сериализации JObject к YamlDotNet
Я открыл билет здесь, но надеюсь, что кто-то может ответить довольно просто.
YamlDotNet не поддерживает ISerializable, но Json.Net поддерживает. Таким образом, в качестве обходного пути мы сначала пытаемся сериализовать наш объект в JObject, который учитывает наши параметры сериализации и сериализует только соответствующие свойства. Затем мы хотим отправить наш объект JOb в YamlSerializer, но мы получаем эту ошибку:
"Объект не соответствует типу цели"
1 ответ
В качестве обходного пути можно использовать предложение, описанное в следующем сообщении: Как преобразовать JSON в YAML с помощью YamlDotNet
т.е. конвертировать JSON в YAML, используя динамический объект Expando.
Пример:
var expConverter = new ExpandoObjectConverter();
var jsonString = JsonConvert.SerializeObject(anyObject);
var expandoObject = JsonConvert.DeserializeObject<ExpandoObject>(jsonString, expConverter);
var textInYamlFormat = serializer.Serialize(expandoObject);