У меня есть экземпляр Elasticsearch, где он инициализируется с помощью файла JSON, содержащего определения полей.Затем я заполняю список объектов POCO и, используя NEST, вызываю IndexManyAsync для вставки или обновления документов.Все это прекрасно работает.Теперь у меня есть небольшой список динамических полей, которые со временем будут добавлены в индекс.Я пытаюсь найти решение, которое не требует перекомпиляции моего класса POCO всякий раз, когда нужно добавить новое поле.Единственное решение, которое я придумал, это добавить поле словаря "AdditionalInfo" в объект POCO.Недостатком этого подхода является то, что динамические поля добавляются в качестве подполей в AdditionalInfo:
"additionalInfo" : {
"$type" : "System.Collections.Generic.Dictionary`2[[System.String, mscorlib],[System.Collections.Generic.List`1[[System.String, mscorlib]], mscorlib]], mscorlib",
"hello" : [
"WORLD",
"Everyone!"
],
"foo" : [
"BAR"
]
}
Есть ли способ заставить Elasticsearch игнорировать "AdditionalInfo", чтобы подполя становились полями корневого уровня?Или есть лучший способ для моделирования динамических полей в классе POCO?