2

在尝试使用 YamlDotNet 时,我遇到了这个警告:

Deserializer.Deserializer(IObjectFactory, INamingConvention, bool, YamlAttributeOverrides) 已过时:'请使用 DeserializerBuilder 自定义 Deserializer。这个构造函数将在未来的版本中被删除。

于是我去官方项目主页:

然后单击“反序列化对象图”示例,这会将我带到这里: https ://dotnetfiddle.net/HD2JXM

而且,令人惊讶的是,这也使用了过时的功能。

我通过这样做来修复它:

DeserializerBuilder groupIDsDB = new DeserializerBuilder();
groupIDsDB.WithNamingConvention(new CamelCaseNamingConvention());
Deserializer groupIDsDeserializer = groupIDsDB.Build();

而不是我之前的:

Deserializer groupIDsDeserializer = new Deserializer(namingConvention: new CamelCaseNamingConvention());

它是否正确?

4

1 回答 1

1

这才是正确的使用方法DeserializerBuilder。这些示例尚未全部更新,有些仍然使用旧的构造函数。

于 2016-10-25T15:53:17.287 回答