ElasticSearch Nest C#动态类型

时间:2017-04-20 21:46:43

标签: c# elasticsearch nest

我使用的是带有ElasticSearch的Nest 5.0版本。我有一个看起来像这样的对象:

[ElasticsearchType(IdProperty = "messageId")]
public class Message
{
    public Message() { }
    public string messageId { get; set; }
    public string conversationId { get; set; }       
    public dynamic context { get; set; }

}

正如您所看到的,我正在尝试拥有一个非常dynamic的对象 - 其中上下文可以包含任何类型的数据。

这会有用吗?在ElasticSearch中使用动态类型的最佳方法是什么?

我需要能够使用context中的数据查询数据。

例如,context可以包含任何类型的属性甚至是分层数据。 例子:

{
     Name: "Billy Bob",
     Age: 12,
     Zip: 33312,
     Interests: ["cars","planes","rockets"]
}

另一个例子:

{
     Name: "Jill Smith",
     Age: 32,
     Zip: 33312,
     Occupation: "Developer",
     Children:[
          {
             Name:"Martha",
             Age: 12
          },
          {
             Name:"John",
             Activity: "Dancing"
          },
     ]

}

0 个答案:

没有答案