elasticsearch - 使用 Nest Client 将多语言 ElasticSearch 文档映射到单语言对象
问题描述
我正在设计一个使用以下对象的应用程序
public class Entity
{
public string Title { get; set; }
public string Description{ get; set; }
}
根据语言参数的对象是从搜索 ElasticSearch 文档(Nest .NET 客户端)中填充的,如下所示
{
"Title": {
"en": "...",
"fr": "..."
},
"Description": {
"en": "...",
"fr": "..."
}
}
我试图找出如何使用语言参数,我可以使用 Nest .NET 客户端将正确的文档字段映射到对象属性。
例如,如果语言是 en,我希望 en Title 和 Description 值填充对象。
先感谢您。
解决方案
您需要使用Object Initilizer语法并有条件地创建您的查询
var searchReq=new SearchRequest<Entity>
{
Query = EntityFilter, --> create your query query
Source = new SourceFilter
{
Includes = ["Title.en","Description.en"]
}
}
推荐阅读
- javascript - JS FormData 类忽略了 Bootstrap 5 disabled+checked 开关
- javascript - JS/Tailwind:对象中的特定单词样式(搜索)
- kubernetes - 如何从 pod 的容器中创建 k8s 集群中的秘密?
- highcharts - 如何使用 Highcharts 消除饼图切片上的间隙
- javascript - 从 React Native 应用程序将 CSV 文件发送到 Express api
- json-ld - JSONLD:如何定义具有不可预测子属性的“杂项”属性?
- powershell - 在 Col C 上分组并在 Col B 上选择 Max 并显示 Col A、B 的 PowerShell 脚本
- arrays - 为什么我在这段代码中有类型错误'(array[True...。任何帮助=
- python - python中的matplotlib.animate使用多处理
- sql-server - T-SQL 谜题:将其用作内联视图时查询失败