Пример #1
0
 public IQueryable <T> FindAll(ILinqSpecification <T> specification)
 {
     using (var session = new Session <T>(typeof(T).Name))
     {
         return(specification.SatisfyingElementsFrom(session.Queryable));
     }
 }
Пример #2
0
 /// <inheritdoc />
 public Task <TEntity> FindOneAsync(ILinqSpecification <TEntity> specification, CancellationToken cancellationToken = default)
 {
     if (specification == null)
     {
         throw new ArgumentNullException(nameof(specification));
     }
     return(specification.SatisfyingElementsFrom(Session.Query <TEntity>())
            .SingleOrDefaultAsync(cancellationToken));
 }
Пример #3
0
 /// <summary>
 /// Finds an item by a specification.
 /// </summary>
 /// <param name="specification">The specification.</param>
 /// <returns>
 /// The matching item or <c>null</c>.
 /// </returns>
 public T FindOne(ILinqSpecification <T> specification)
 {
     return(specification.SatisfyingElementsFrom(this.Session.Query <T>()).SingleOrDefault());
 }
Пример #4
0
 /// <summary>
 /// Finds all items by a specification.
 /// </summary>
 /// <param name="specification">The specification.</param>
 /// <returns>
 /// All matching items.
 /// </returns>
 public IQueryable <T> FindAll(ILinqSpecification <T> specification)
 {
     return(specification.SatisfyingElementsFrom(this.Session.Query <T>()));
 }
Пример #5
0
 /// <inheritdoc />
 public Task <TEntity> FindOneAsync(ILinqSpecification <TEntity> specification, CancellationToken cancellationToken = default)
 {
     return(specification.SatisfyingElementsFrom(Session.Query <TEntity>()).SingleOrDefaultAsync(cancellationToken));
 }
Пример #6
0
 /// <summary>
 /// Finds an item by a specification.
 /// </summary>
 /// <param name="specification">The specification.</param>
 /// <returns>
 /// The matching item.
 /// </returns>
 public T FindOne(ILinqSpecification <T> specification)
 {
     return(specification.SatisfyingElementsFrom(FindAll()).SingleOrDefault());
 }
Пример #7
0
 /// <summary>
 ///     Finds all items by a specification.
 /// </summary>
 /// <param name="specification">The specification.</param>
 /// <returns>
 ///     All matching items.
 /// </returns>
 public IQueryable <TEntity> FindAll(ILinqSpecification <TEntity> specification)
 => specification.SatisfyingElementsFrom(FindAll());