I want to define a background service to update the status of database records daily. I've searched online and found multiple ways to do so like IHostedService, BackgroundService, Hangfire and Quartz.
I want a solution that can help me in the long run to define more background tasks that might include sending emails and notifications and updating things regularly.
So what is the most popular and used way to define a background service in ASP.NET Core, and what the pros and cons of each method?