Refactored to remove IDataContext as the DataContext class is an implmentation detail of the IRepository inplementation using Entity Framwork.