2

我正在使用 NEST 来索引我的对象,并且在序列化时遇到了 Newtonsoft 错误。我的一个对象有一个自引用循环。有没有办法让我访问 JsonSerializer 并更改它处理自引用的方式而无需修改源代码?

4

2 回答 2

3

您可以在客户端上注册自定义转换器:

public void AddConverter(JsonConverter converter)
{
    this.IndexSerializationSettings.Converters.Add(converter);
    this.SerializationSettings.Converters.Add(converter);
}

这可能会有所帮助。

但是,没有直接的方法可以更改JsonSerializerSettings客户端中使用的内容。

于 2013-01-30T07:41:06.390 回答
3

现在有一个新的api,看看:

    var cs2 = new ConnectionSettings(new Uri("http://localhost:9200"))
        .SetJsonSerializerSettingsModifier(settings => settings.TypeNameHandling = TypeNameHandling.None)
        .EnableTrace();

感谢添加支持!

于 2014-07-26T00:19:32.423 回答