public static Task <TryValue <TEntity> > TryGetAsync <TKey, TEntity>( this IAsyncStore <TEntity> store, TKey key, CancellationToken cancellation = default(CancellationToken)) where TEntity : class, IKeyed <TKey> { GetMethodContracts(store, key); return(store.WhereAsync(entity => entity.Key.Equals(key)).SingleOrNoneAsync()); }
public static Task <TEntity> GetOrNullAsync <TKey, TEntity>( this IAsyncStore store, TKey key, CancellationToken cancellation = default(CancellationToken)) where TEntity : class, IKeyed <TKey> { GetMethodContracts(store, key); return(store.WhereAsync((TEntity entity) => entity.Key.Equals(key)).SingleOrDefaultAsync()); }