Unit of Work Pattern in ASP.NET Core: When to Use It