【问题标题】:Is there a Driver for mongodb to use Atlas search in .net core application?是否有 mongodb 驱动程序可以在 .net 核心应用程序中使用 Atlas 搜索?
【发布时间】:2020-02-29 09:25:15
【问题描述】:

我在我的 .net 核心应用程序中使用 MongoDB Atlas,使用 c# 驱动程序连接数据库,最近了解了 Atlas Search,我能够为我的集合创建索引,有没有办法使用$searchbeta 从我的应用程序中查询我的索引?

【问题讨论】:

    标签: mongodb mongodb-.net-driver mongodb-atlas mongodb-atlas-search


    【解决方案1】:

    你可以使用aggregate方法和BsonDocument.Parse

    var pipeline = BsonDocument.Parse("{ $searchBeta: { search: { path: 'foo', query : 'bar' } }}");
    var result = col.Aggregate<BsonDocument>(pipeline);
    

    【讨论】:

    • 当我使用它时,我得到如下编译错误: 严重性代码描述项目文件行抑制状态错误 CS0411 方法的类型参数 'IMongoCollection.Aggregate(PipelineDefinition, AggregateOptions, CancellationToken)' 不能从用法中推断出来。尝试明确指定类型参数。
    • 添加类型参数
    【解决方案2】:

    您可以使用Aggregation Pipeline

    对于 c# 驱动程序,请参阅 Definitions and Builders 文档中的管道部分

    var pipeline = new BsonDocument[] 
    {
        BsonDocument.Parse("{ $searchBeta: ... }"),
        BsonDocument.Parse("{ $sort: ... }")
    };
    var result = _db.GetCollection<Person>("people").Aggregate<Person>(pipeline).ToList();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-04-25
      • 2021-07-04
      • 2017-04-16
      • 2017-03-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多