Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *


    1. Hi,
      Again, It all depends on your preference. Using RP gives a nice abstraction over your ORM (EFCore). Thus, your application no longer depends on the implementation of the persistence but depends only on the Repository Implementation. Yes EFCore is internally built with Repository Pattern, but that does not help in creating an abstraction. You will understand the importance of this pattern when a different ORM Comes into your project/. Let’s say, after 3 years, there is something better than EFCore (very possible,yeah?). In such cases, having the Repository pattern smoothens the migration process, I hope you get the point.


  1. Hi Mukesh,
    Do you have any plan to use Caching and Hangfire Job Processing in your ASP.NET Core WebAPI – Clean Architecture template project?

    1. Can we use both types of authentications(cookie + jwt) in singe .net core web project ??

      Single Api should be able to handle requests with cookie and jwt token in header

  2. Hi,

    Great article, very well presented. One question, how would it be possible to make the GenericRepository more generic about the caching technology it uses rather than hard coding it to Memory?

  3. I’m a software developer from Turkey. You write such beautiful articles that I congratulate you! I read and follow with pleasure. Thank you.

  4. Have I missed something or did you leave out the:

    public Startup(IConfiguration configuration)
    Configuration = configuration;
    public IConfiguration Configuration { get; }

    In the Startup Class ?


  5. Hi Mukesh thanks for the article. Is there any performant way to use caching in methods like “GetByIdAsync” which returns only one record?

  6. Great article but how about if you are using UnitOfWork and you want to remove the SaveChanges from Add/Delete/Update functions?

  7. Hi there, nice article, thank you for sharing the knowledge 🙂
    Why do you only cache GetAllAsync and not also GetByIdAsync? That would be very useful.
    Also, you choose Hangfire, but not Quartz. Can you share why you picked up the first?