private IEnumerable <object> MapTableToObjects(DataTable table) { foreach (DataRow row in table.Rows) { if (string.IsNullOrEmpty(row[DiscriminatorColumn].ToString())) { continue; } object obj; try { var dictionary = MapToDictionary(row); obj = _mapper.CreateObject(_typeRegistry.GetFirstDTOType(row[DiscriminatorColumn].ToString()), dictionary); } catch (Exception ex) { obj = new CorruptObject { Exception = ex }; } yield return(obj); } }