public async Task<List<string>> Get(string appId, string itemId, string relation, string userId)
{
using (var conn = new CqlConnection(_connString))
{
await conn.OpenAsync().ConfigureAwait(false);
var query = string.Format(
System.Globalization.CultureInfo.InvariantCulture,
"select values from negrapi.relations where app_id = '{0}' and item_id='{1}' and relation='{2}';",
appId,
GetKey(itemId, userId),
relation);
var cmd = new CqlCommand(
conn,
query,
CqlConsistency.One);
var result = await cmd.ExecuteScalarAsync().ConfigureAwait(false) as string;
if (string.IsNullOrEmpty(result))
{
return null;
}
var list = JsonConvert.DeserializeObject<List<RecommendationsDataValue>>(result);
return list
.Select(i => i.ItemId)
.ToList();
}
}