本文整理汇总了C#中RedisValue.CopyTo方法的典型用法代码示例。如果您正苦于以下问题:C# RedisValue.CopyTo方法的具体用法?C# RedisValue.CopyTo怎么用?C# RedisValue.CopyTo使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类RedisValue
的用法示例。
在下文中一共展示了RedisValue.CopyTo方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: AllBitsSet
/// <summary>
/// Determines if all the bits are set in the bloom filter.
/// </summary>
/// <param name="key">
/// The key.
/// </param>
/// <param name="bits">
/// The bits.
/// </param>
/// <returns>
/// The <see cref="bool"/>.
/// </returns>
private static bool AllBitsSet(string key, RedisValue[] bits)
{
RedisKey[] keyArgs = { key };
RedisValue[] valueArgs = new RedisValue[bits.Length];
bits.CopyTo(valueArgs, 0);
RedisResult result = SharedCache.Instance.GetWriteConnection(key)
.GetDatabase(SharedCache.Instance.Db)
.ScriptEvaluate(BloomFilter.AllBitsSetHash, keyArgs, valueArgs);
return null != result && !result.IsNull && 1L == (long)result;
}
示例2: AllBitsSetAsync
/// <summary>
/// Determines if all the bits are set in the bloom filter.
/// </summary>
/// <param name="key">
/// The key.
/// </param>
/// <param name="bits">
/// The bits.
/// </param>
/// <returns>
/// The <see cref="Task"/>.
/// </returns>
private static async Task<bool> AllBitsSetAsync(string key, RedisValue[] bits)
{
RedisKey[] keyArgs = { key };
RedisValue[] valueArgs = new RedisValue[bits.Length];
bits.CopyTo(valueArgs, 0);
Task<RedisResult> result = SharedCache.Instance.GetWriteConnection(key)
.GetDatabase(SharedCache.Instance.Db)
.ScriptEvaluateAsync(BloomFilter.AllBitsSetHash, keyArgs, valueArgs);
if (null == result)
{
return false;
}
RedisResult value = await result;
return !value.IsNull && 1L == (long)value;
}
示例3: SetBitsAsync
/// <summary>
/// Sets bits in the bloom filter.
/// </summary>
/// <param name="key">
/// The key.
/// </param>
/// <param name="bits">
/// The bits.
/// </param>
/// <param name="value">
/// The value.
/// </param>
/// <returns>
/// The <see cref="Task"/>.
/// </returns>
private static Task SetBitsAsync(string key, RedisValue[] bits, bool value)
{
RedisKey[] keyArgs = { key };
RedisValue[] valueArgs = new RedisValue[bits.Length + 1];
valueArgs[0] = value;
bits.CopyTo(valueArgs, 1);
return SharedCache.Instance.GetWriteConnection(key)
.GetDatabase(SharedCache.Instance.Db)
.ScriptEvaluateAsync(BloomFilter.SetMultipleBitsHash, keyArgs, valueArgs);
}