我正在尝试使用 .NET 客户端刷新存储桶中的所有数据。 这是我正在使用的代码:
_instance = new CouchbaseClient();
_instance.FlushAll();
但是抛出如下异常信息 “要刷新 Couchbase 存储桶,请使用 Couchbase.Management API。”
我还启用了“刷新”启用设置。
最佳答案
下面的代码在我对空载的桶的快速测试中成功运行。它使用集群管理器而不是客户端来执行刷新。请进一步测试。文档引用是 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");
我遇到了几件事情,我将与您分享这些事情,以避免您遇到同样的痛苦。首先,必须引用System.Configuration 才能使用ConfigurationManager。仅仅将 using 语句放在我的代码中是不够的。我必须按照 System.Configuration.ConfigurationManager not available? 中的描述手动添加它.
其次,使用集群管理器需要凭据。因此,我不得不将它们放入 app.config 文件中。示例如下。
<couchbase>
<servers bucket="MyBucket" bucketPassword="password" username="Administrator" password="password">
<add uri="http://localhost:8091/pools"/>
</servers>
</couchbase>
关于c# - 如何使用 .NET 客户端以编程方式删除托管在 couchbase 中的数据库存储桶中的所有数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23282963/