public List <TrackInfoView> CreateFromTrackInfos(IList <TrackInfo> trackInfos) { var trackInfoViews = new List <TrackInfoView>(); trackInfos.ToList().ForEach(trackInfo => { var trackInfoView = new TrackInfoView() { FileId = trackInfo.FileId, FileName = trackInfo.FileName, ProjectName = trackInfo.ProjectName, ProjectId = trackInfo.ProjectId, FileType = trackInfo.FileType, Language = trackInfo.Language, Efficiency = trackInfo.ProductivityScore, KeystrokesSaved = trackInfo.SegmentTrackInfos.Sum(x => x.InsertedCharacters - x.NumberOfKeys < 0 ? 0 : x.InsertedCharacters - x.NumberOfKeys), InsertedCharacters = trackInfo.SegmentTrackInfos.Sum(x => x.InsertedCharacters), }; trackInfoViews.Add(trackInfoView); }); return(trackInfoViews); }
private List <TrackInfoView> GetTrackInfoView(List <TrackInfo> trackingInfos) { return(TrackInfoView.CreateFromTrackInfos(trackingInfos)); }