В настоящее время я ограничен NEST v2.4.6.
У меня есть объекты с атрибутами, которые иногда могут быть нулевыми и должны сохраняться с этими нулевыми атрибутами.
Согласно документации:
https://www.elastic.co/guide/en/elasticsearch/client/net-api/2.x/modifying-default-serializer.html#_modifying_settings_using_serializerfactory
Это должно позволить мне сериализовать нулевые значения.
К сожалению, после настройки все мои запросы ElasticDB начинают ничего не возвращать.
Это сбивает с толку, когда я ставлю
[JsonProperty(NullValueHandling = NullValueHandling.Include)]
атрибут, он отлично работает.
Я, очевидно, хотел бы включить это глобально.
Вот как выглядит моя реализация:
var pool = new SingleNodeConnectionPool(new Uri(ConfigurationManager.AppSettings["ElasticInstanceAddress"]));
var connection = new HttpConnection();
var settings = new ConnectionSettings(pool, connection,
new SerializerFactory((s, values) =>
{
s.NullValueHandling = NullValueHandling.Include;
}));
Пример запроса NEST, который внезапно начинает ничего не возвращать после включения NullValueHandling
на сериализаторе, выглядит следующим образом:
var dog = _client.Get<Dog>(query.DogName).Source;
Есть идеи?