Miguel Moura
Miguel Moura

Reputation: 39484

How to make Repository Methods Async?

I have the following methods on a Entity Framework 6 generic Repository:

public void Add<T>(T entity) where T : class {
  _context.Set<T>().Add(entity);
} // Add

public void Add<T>(Expression<Func<T, Boolean>> criteria) where T : class {
  _context.Set<T>().AddRange(_context.Set<T>().Where(criteria));
} // Add

public IQueryable<T> Find<T>(Expression<Func<T, Boolean>> criteria) where T : class {
  return _context.Set<T>().Where(criteria);
} // Find

How can I make these methods async?

Thank You, Miguel

Upvotes: 1

Views: 963

Answers (1)

walther
walther

Reputation: 13600

I really don't think you should force your repository to be async. What you should do instead is to make async your business logic, that would eventually reference your repositories and access them as needed. Your data access shouldn't know anything about the way it will be used somewhere else.

Upvotes: 2

Related Questions