如何使用.NET客户端以编程方式删除在couchbase中托管的数据库存储桶中的所有数据

Cod*_*ian 3 .net c# nosql couchbase

我正在尝试使用.NET客户端刷新存储桶中的所有数据.这是我正在使用的代码:

        _instance = new CouchbaseClient();
        _instance.FlushAll();
Run Code Online (Sandbox Code Playgroud)

但是,抛出以下异常消息"要刷新Couchbase存储桶,请使用Couchbase.Management API."

我也启用了"Flush"启用设置.

小智 5

以下代码在我对无负载的桶的快速测试中成功运行.它使用集群管理器来执行刷新而不是客户端.请进一步测试.文档参考是http://docs.couchbase.com/couchbase-sdk-net-1.3/#cluster-management-with-the-net-client-library.

var config = (CouchbaseClientSection)ConfigurationManager.GetSection("couchbase");
var cluster = new CouchbaseCluster(config);
cluster.FlushBucket("MyBucket");
Run Code Online (Sandbox Code Playgroud)

我遇到了一些我要分享的事情,以避免同样的痛苦.首先,必须引用System.Configuration才能使用ConfigurationManager.只是将using语句放在我的代码中是不够的.我必须手动添加它,如System.Configuration.ConfigurationManager中所述不可用?.

其次,使用集群管理器需要凭据.因此我不得不将它们放入app.config文件中.以下示例.

<couchbase>
  <servers bucket="MyBucket" bucketPassword="password" username="Administrator" password="password">
    <add uri="http://localhost:8091/pools"/>
  </servers>
</couchbase>
Run Code Online (Sandbox Code Playgroud)