Func<IUnitOfWork> unitOfWorkLocator