elasticsearch 如何使用嵌套和对象初始值设定项语法执行原始查询?,elasticsearch,nest,elasticsearch,Nest" /> elasticsearch 如何使用嵌套和对象初始值设定项语法执行原始查询?,elasticsearch,nest,elasticsearch,Nest" />

elasticsearch 如何使用嵌套和对象初始值设定项语法执行原始查询?

elasticsearch 如何使用嵌套和对象初始值设定项语法执行原始查询?,elasticsearch,nest,elasticsearch,Nest,我正在尝试使用Nest在ElasticSearch中进行搜索。我想使用对象初始值设定项语法,因为我需要动态构建搜索的各个部分。我已经知道如何构建大部分请求,但不清楚如何初始化原始查询。OIS似乎没有将QueryRaw作为请求的参数 我现在拥有的代码: var searchResults = client.Search<dynamic>(s => s .Index("myIndex"), .Type("myType), .Aggregations(a =&

我正在尝试使用Nest在ElasticSearch中进行搜索。我想使用对象初始值设定项语法,因为我需要动态构建搜索的各个部分。我已经知道如何构建大部分请求,但不清楚如何初始化原始查询。OIS似乎没有将QueryRaw作为请求的参数

我现在拥有的代码:

var searchResults = client.Search<dynamic>(s => s
    .Index("myIndex"),
    .Type("myType),
    .Aggregations(a => a
        .DateHistogram("my_date_histogram", h => h
            .Field("DateField")
            .Interval("day")
         )
     )
     .QueryRaw(queryText)
)
var searchResults=client.Search(s=>s
.指数(“myIndex”),
.Type(“myType”),
.聚合(a=>a
.DateHistogram(“我的日期柱状图”,h=>h
.Field(“日期字段”)
.间隔(“日”)
)
)
.QueryRaw(queryText)
)
我正在尝试创建的代码:

var request = new SearchRequest<dynamic>
{
    Index = "MyIndex",
    Type = "MyType",
    QueryRaw = <doesn't exist>
};
var请求=新的搜索请求
{
Index=“MyIndex”,
Type=“MyType”,
QueryRaw=您可以通过

var searchResponse = client.Search<dynamic>(new SearchRequest
{
    Query = new RawQuery(yourquery)
});
var searchResponse=client.Search(新的SearchRequest
{
Query=新的RawQuery(您的查询)
});
使用NEST 2.0.0.alpha2和ES 2.1.0测试,您可以通过

var searchResponse = client.Search<dynamic>(new SearchRequest
{
    Query = new RawQuery(yourquery)
});
var searchResponse=client.Search(新的SearchRequest
{
Query=新的RawQuery(您的查询)
});

使用NEST 2.0.0.alpha2和ES 2.1.0测试以下是如何使用新对象结构执行原始查询:

var response = client.Search<dynamic>(s => s
    .Query(qry => qry
        .Raw(yourRawQueryStringHere)
    )
);
var response=client.Search(s=>s
.Query(qry=>qry
.Raw(YourRawQueryString此处)
)
);

以下是如何使用新的对象结构执行原始查询:

var response = client.Search<dynamic>(s => s
    .Query(qry => qry
        .Raw(yourRawQueryStringHere)
    )
);
var response=client.Search(s=>s
.Query(qry=>qry
.Raw(YourRawQueryString此处)
)
);

谢谢Rob。看起来Nest 1.7.1可能不起作用?我尝试升级到Nest 2.0.0 alpha 2,但这导致了对Newtonsoft 8.0.1的更新(随后破坏了其他已安装的Azure软件包)DateHistorograMaggregator不再解析。我无法用1.7.1处理此问题。看起来
DateHistorograMaggregator
已重命名为
DateHistorograMaggregation
。关于Json 8.0.1…是的:/谢谢Rob。看起来这可能对Nest 1.7.1不起作用?我尝试升级到Nest 2.0.0 alpha 2,但那是真的导致了对Newtonsoft 8.0.1的更新(随后破坏了其他已安装的Azure软件包),DateHistorograMaggregator不再得到解决。我无法使用1.7.1解决此问题。看起来,
DateHistorograMaggregator
已重命名为
DateHistorograMaggregation
。关于Json 8.0.1…是的:/