Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
<img src="//i.stack.imgur.com/RUiNP.png" height="16" width="18" alt="" class="sponsor tag img">elasticsearch 字典的嵌套映射<;字符串,对象>;_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch_Nest - Fatal编程技术网 elasticsearch 字典的嵌套映射<;字符串,对象>;,elasticsearch,nest,elasticsearch,Nest" /> elasticsearch 字典的嵌套映射<;字符串,对象>;,elasticsearch,nest,elasticsearch,Nest" />

elasticsearch 字典的嵌套映射<;字符串,对象>;

elasticsearch 字典的嵌套映射<;字符串,对象>;,elasticsearch,nest,elasticsearch,Nest,我正在尝试使用NEST,但不知道如何与这个类一起使用它 公共类度量{ 公共日期时间时间戳{get;set;} 公共字典度量{get;set;} } 如何将新的fluent映射用于这样的类 我计划使用我喜欢的: var-measurements=newdictionary(); 测量[“访问”]=1; 测量[“url”]=新字符串[]{“/help”,“/about”}; connection.Index(新度量(){ 时间戳=DateTime.UtcNow, 测量=测量 }); 是否可以针对

我正在尝试使用NEST,但不知道如何与这个类一起使用它

公共类度量{
公共日期时间时间戳{get;set;}
公共字典度量{get;set;}
}
如何将新的fluent映射用于这样的类

我计划使用我喜欢的:

var-measurements=newdictionary();
测量[“访问”]=1;
测量[“url”]=新字符串[]{“/help”,“/about”};
connection.Index(新度量(){
时间戳=DateTime.UtcNow,
测量=测量
});

是否可以针对字典编写查询?如果我想用一个名为“访问”的mesurenemt来获取昨天的所有指标,那会是什么样子?

您没有
来使用映射,在这种情况下,您可以很好地依赖elasticsearch的无模式特性

json序列化程序会将其写成:

{
    "timestamp" : "[datestring]",
    "measurement" : {
        "visits" : 1,
        "url" : [ "/help", "/about"]
    }
}
您可以使用NEST查询“measurement.visions”字段是否存在

var result=client.Search(s=>s
.从(0)
.尺寸(10)
.Filter(Filter=>Filter
.存在(“测量.访问”)
)
);
结果。文档
现在保存前10个指标,并在
度量
字典中输入
访问

如果确实希望使用新的fluent映射显式映射该字典中的可能键:

var result=client.MapFluent(m=>m
.Properties(props=>props
.Object(s=>s)
.Name(p=>p.Measurement)
.Properties(pprops=>pprops
.Number(ps=>ps
.姓名(“访问”)
.Type(NumberType.@integer)
)
.String(ps=>ps
.名称(“url”)
.Index(FieldIndexOption.not_分析))
)
)
)
)
);
请记住,我们没有使用此映射关闭动态映射,因此您仍然可以将其他键插入词典,而不会打乱elasticsearch。只有现在elasticsearch才知道访问量是一个实际的整数,我们不想分析url值

由于我们没有使用任何类型化访问器(将.Name()调用类型化为
Metric
。Object
也可以是
。Object