存储桶的 Couchbase 命名参数

Couchbase named parameters for buckets

我正在尝试添加一个命名参数来填充我的存储桶名称,但我无法让它工作。

  var query = new QueryRequest()
    .Statement("SELECT b.*, META(b).id FROM $bucketName b WHERE b.type = 'Board' AND b.environment = $environment")
                .AddNamedParameter("$bucketName", _bucketName)
                .AddNamedParameter("$environment", _environment);

  query.ScanConsistency(ScanConsistency.RequestPlus);

  var result = _bucket.Query<Board>(query);

以下正确运行:

  var query = new QueryRequest()
    .Statement("SELECT b.*, META(b).id FROM `travel-sample` b WHERE b.type = 'Board' AND b.environment = $environment")
                .AddNamedParameter("$environment", _environment);

编辑:这也行不通

.AddNamedParameter("$bucketName", $"`{_bucketName}`")

我认为您不能为存储桶名称使用参数(很高兴被证明是错误的)。我在这些场景中所做的是使用存储桶对象本身来获取名称。喜欢:

var n1ql = $"SELECT t.* FROM `{_bucket.Name}` t LIMIT 10";