当前位置: 首页 > 面试题库 >

在ElasticSearch NEST查询中返回Raw Json

越望
2023-03-14
问题内容

我对.net中的elasticsearch客户端进行了一项小型研究,发现NEST是对此问题最受支持的解决方案之一。

我正在查看Nest的文档,但我找不到从查询输出原始json并避免将序列化为对象的方法,因为我在前端使用了angularJs,所以我不想重载该过程通过一些不必要的步骤将信息发送给客户端。

......而且我还想知道如何覆盖序列化过程?

我发现NEST使用Json.NET,我想为servicestack json serielizer更改它。

谢谢!


问题答案:

嗨,Pedro,您可以使用NEST做到这一点

var searchDescriptor = new SearchDescriptor<ElasticSearchProject>()
    .Query(q=>q.MatchAll());
var request = this._client.Serializer.Serialize(searchDescriptor);
ConnectionStatus result = this._client.Raw.SearchPost(request);
Assert.NotNull(result);
Assert.True(result.Success);
Assert.IsNotEmpty(result.Result);

这使您可以强烈地键入查询,但是将字符串(.Result这是从Elasticsearch作为字符串的原始响应返回给您的字符串)

request 可以是一个对象或字符串,所以如果您对内部json序列化没问题,则直接通过searchDescriptor



 类似资料:
  • 问题内容: 我试图创建一个查询集以获取DateTimeField的值,该值是数据库中的DATETIME。 models.py中的类: 数据库中的字段: 元组已填充到数据库中,并且直接在DB上运行SQL查询运行良好。 这是我当前在Django中使用的查询集: 我已经尝试过原始查询以及使用exclude()的查询版本,但是对于日期仍然返回None。 我正在通过for循环访问queryset中的条目,并

  • 一般来说,我对python和编程都是新手。这段代码最终将在更大的应用程序中使用。我为任何错误提前道歉。我正在尝试从postgresql数据库中的表进行简单查询。唯一的结果是没有。尽管我知道那里有数据。提前感谢您的帮助。

  • 我正在使用JDBC创建一个数据库,其中包含表和。两者都有一个名为 以下是我创建和填充表的SQL语句: 我试图运行以下查询: 或 或 使用 但是我没有得到任何结果。 这两个问题都可以解决。 SQLite数据库服务器显示相同的问题: 它与Firefox中的SQLite Manager一起工作。

  • 问题内容: 桌子: 我的查询: 我收到“ MySQL子查询返回多个行”错误。 我知道此查询可以使用以下查询的解决方法: 然后使用php循环遍历结果并执行以下查询以获取和回显它: 但是我认为可能会有更好的解决方案? 问题答案: 简单的解决方法是在子查询中添加一个子句: 一个更好的选择(就性能而言)是使用联接:

  • 问题内容: 使用,我有一个用于创建视图的查询,并且试图显示 月份的名称 而不是整数。 在我的数据库中,位于列中。查询中返回日期的行是: 这将返回整数的年份和月份的列。我想返回月份名称)。我试过了: 这显然是不正确的,因为我得到 ‘AS’附近的语法不正确 信息。我的查询的正确语法是什么? 问题答案: 这将为您提供月份的全名。 如果您只想要前三个字母,可以使用此

  • 问题内容: 如何获取使用SQL Server的SQL查询返回的列数? 例如,如果我有如下查询: 它应该返回表A1中的总列数+表A2中的总列数。但是查询可能会更复杂。 问题答案: 这是一种方法: 您可以通过创建视图来执行类似的操作。