2

CouchBase 1.8をインストールし、.NETクライアントを使用して操作しています。バケット(および値)に格納されているすべてのキーを取得する方法があるかどうかを知りたいです。.NETソリューションでなくても、機能する限り問題ありません。

ありがとうV

4

1 に答える 1

4

Couchbase Server2.0Betaの使用をお勧めします-http ://www.couchbase.com/couchbase-server/beta。そのバージョンでは、ビューを使用してすべてのドキュメントをバケットに入れることができます。

function (doc, meta)
{
   emit(meta.id, null);
}

次に、.NET 1.2ベータクライアントを使用して、すべてのドキュメントを反復処理できます(または、Webコンソールを使用してビューの結果を表示できます)。

.NETサンプルを含めるように編集:

上記のJavaScriptMap関数を使用してビューを作成したら、次のように.NETクライアントを使用します(「utils」という名前のデザインドキュメントと「all_keys」という名前のビューを作成したと仮定します。

var view = client.GetView("utils", "all_keys");
foreach(var row in view)
{
    Console.WriteLine("Current ID: " + row.ItemId);
}

また:

var keys = view.Select(row => row.ItemId); //get an IEnumerable<string> of IDs
foreach(var key in keys)
{
    Console.WriteLine("Current ID: " + key);
}

.NETクライアントとビューの詳細についてはhttp://blog.couchbase.com/strongly-typed-views-net-client-libraryをご覧ください。

--jz

于 2012-09-28T15:18:01.157 に答える