我有一个非常简单的POCO类,这是elasticsearch .NET客户端(v8.0,所以这不是使用的NEST客户端,这是不赞成)所需的。
为了测试,我使用了一个非常简单的对象
public class HardwareData
{
public DateTime timestamp { get; set; }
public int System_ErrorLevel { get; set; }
}
我设置我的连接对象,然后我想做一些像:
客户端。ElasticSearch客户端设置。属性Map。添加(“时间戳”,"@时间戳”)
但这是不可能的,有一个PropertyMappings属性,但它没有做我所期望的(即Map时间戳到所需的@时间戳字段)
我可以通过使用摄取管道来实现这个结果,但应该有一个直接的方法来做到这一点。我在互联网上找到的所有示例都使用NEST API,而不是最新版本中可用的ElasticsearchClient对象。
如果我不Map时间戳,那么当我调用:
await client.IndexAsync(new IndexRequest<HardwareData>()
{
Document = data
});
其中data是HardwareData类型。错误是未设置@timestamp。
1条答案
按热度按时间kx5bkwkv1#
您能试试这个吗?