public async Task <T> GetByIdentifierAsync <T>(string identifier) where T : Entity { var bucketName = _compassEnvironment.GetCouchbaseBucketName(); var query = $@"SELECT {bucketName}.* FROM `{bucketName}` AND identifier = '{identifier}' AND docType = '{nameof(T)}'"; var queryResult = await _couchbaseClient.QueryAsync <T>(query); return(queryResult.SingleOrDefault()); }
public CouchbaseFactory(ICompassEnvironment compassEnvironment) { _compassEnvironment = compassEnvironment; _cluster = new Cluster(new ClientConfiguration { Servers = new List <Uri> { _compassEnvironment.GetCouchbaseUri() } }); _bucket = _cluster.OpenBucket(_compassEnvironment.GetCouchbaseBucketName()); }