Я пытаюсь выполнить массовую операцию:
var response = await _client.BulkAsync(new BulkRequest
{
Operations = list.Select(x => new BulkIndexOperation<T>(x)).Cast<IBulkOperation>().ToList(),
Refresh = Elasticsearch.Net.Refresh.True
});
Я получаю эту ошибку в ссылочном цикле:
JsonSerializationException: Обнаружена самосвязанная петля для свойства 'parent' свведите «Категория».Путь 'children [0]'.
Я видел решения для этого, и я думаю, что я близок, но я не уверен, где здесь настроить игнорировать?
var connection = new ConnectionSettings(
new SingleNodeConnectionPool(new System.Uri(settings.Value.ElasticSearchUrl)),
new HttpConnection(),
new ConnectionSettings.SourceSerializerFactory((jsonSettings, nestSettings) =>
jsonSettings.?????)
);
******** ОБНОВЛЕНИЕ ************** Я получил его для работы с этим:
var connection = new ConnectionSettings(
new SingleNodeConnectionPool(new System.Uri(settings.Value.ElasticSearchUrl)),
sourceSerializer: (builtin, setting) => new JsonNetSerializer(
builtin, setting, () => new JsonSerializerSettings {
ReferenceLoopHandling = ReferenceLoopHandling.Ignore
}
));