Just wondering what the reasoning behind implementing unit of work as a concrete class was, instead of implementing commit as a method of the base repository which could implement IUnitOfWork?
Also could the DataBaseFactory class not be implemented in the constructor of BaseRepository and expose the datacontext via a property to pass into other repository instances with an overloaded constructor? Or does the use of Unity for IoC require a use
of wrapper class for the DbContext implementation as their is no IDbContext interface available in EFCodeFirst as far as I can see?
Overall a good tutorial just wish their was some clarification and discussion on the architectural decisions made...