我有一个Elasticsearch实例,其中使用包含字段定义的JSON文件对其进行了初始化。然后,我填充POCO对象的列表,并使用NEST调用IndexManyAsync来插入或更新文档。所有这些都很好。我现在有一小部分动态字段,这些字段将随着时间的推移添加到索引中。我试图提出一种解决方案,该解决方案不涉及在需要添加新字段时重新编译POCO类。我想出的唯一解决方案是向POCO对象添加“ additionalInfo”字典字段。这种方法的缺点是将动态字段作为子字段添加到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类中为动态字段建模?