示例#1
0
        public static async Task <KeyValuePair <TKey, TValue>?> Find <TKey, TValue>
        (
            [NotNull] this IQueryManager <TKey, TValue> queryManager,
            [NotNull] Func <TKey, bool> isKey,
            [CanBeNull] CancellationToken cancellationToken = default
        )
        {
            var query = new FindQuery <TKey, TValue>(isKey, cancellationToken);

            if (!await queryManager.ExecuteQuery(query).ConfigureAwait(false))
            {
                return(null);
            }

            return(new KeyValuePair <TKey, TValue>(query.Key, query.Value));
        }