Creating a simple unit of work with Entity Framework and no repository
I can be very short about this:


Single responsibility: a controller shouldn't also have Unit of Work responsibilities. The context itself is the perfect Unit of Work.
You don't always need SaveChanges
Use dependency injection.


I like to see controllers as light-weight doorways to web-independent service methods. The services have their own DbContext and execute SaveChanges where necessary and, thus, can be used in other applications than just MVC/Web API applications. Controllers receive services by dependency injection.