运行原始的 Mycouch 查询
本文关键字:查询 Mycouch 原始 运行 | 更新日期: 2023-09-27 18:35:35
我是couchdb和mycouch的新手。我正在尝试实现一个非常简单的查询,我只想获取视图的结果并将其保存到我的 DTO 类中。
当我通过HTTP手动查询时,我的couchdb查询有效:
http://localhost:5984/mydb/_design/tshirts/_view/getAllTshirts
但是,当我尝试使用 mycouch 从我的应用程序运行它时,我无法运行它。我当前的查询:
using MyCouch.Requests;
using MyCouch.Responses;
// (...)
using (var client = new Client("http://localhost:5984/samples")) {
var query = new QueryViewRequest("getAllTshirts");
ViewQueryResponse<TShirt[]> result = await client.Views.QueryAsync<TShirt[]>(query);
Console.WriteLine (result);
}
由于某种原因,它找不到Client
类。我找到了一个在 github 上使用 Client
的示例,如您所见,我正在使用所有与MyCouch
相关的命名空间,如示例中所示。
我也尝试使用MyCouchStore
:
using (var store = new MyCouchStore("http://localhost:5984/", "samples")) {
var query = new QueryViewRequest("getAllTshirts");
ViewQueryResponse<TShirt[]> result = await store.Views.QueryAsync<TShirt[]>(query);
Console.WriteLine (result);
}
但是,store
不包含任何名为 Views
的属性。知道如何使用MyCouch查询我的视图的任何想法?
这就是我所做的,MyCouchStore
using (var store = new MyCouchStore("http://user:password@localhost:5984", "samples")) {
var query = new Query("tshirts", "getAllTshirts");
var rows = store.QueryAsync<TShirt>(query).Result;
}
显然,文档不是最新的。构造函数现在需要 2 个参数,第二个是可选的引导程序。这对我有用:
var client = new Client("http://localhost:5984/samples", null)