public void AddFlatSeries(FlatSeries flatSeries) { using (var context = contextMaker.Invoke()) { context.FlatSeries.Add(flatSeries); context.SaveChanges(); } }
private void SaveFlatSeries(IEnumerable <Flat> flats) { var flatSeries = new FlatSeries(); flatSeries.Amount = flats.Count(); flatSeries.AvgPrice = flats.Average(x => x.TotalPrice); flatSeries.AvgPricePerMeter = flats.Average(x => x.Surface) == 0 ? 0 : flatSeries.AvgPrice / flats.Average(x => x.Surface); flatSeries.BestValueId = flats.MinBy(x => x.Surface == 0 ? 0 : (x.TotalPrice / x.Surface)).FirstOrDefault()?.Id; flatSeries.BiggestId = flats.MaxBy(x => x.Surface).FirstOrDefault()?.Id; flatSeries.MostExpensiveId = flats.MaxBy(x => x.TotalPrice).FirstOrDefault()?.Id; flatSeries.SmallestId = flats.MinBy(x => x.Surface).FirstOrDefault()?.Id; flatSeries.CheapestId = flats.MinBy(x => x.TotalPrice).FirstOrDefault()?.Id; flatSeries.DateFetched = DateTime.Now.Date; _otoDomRepository.AddFlatSeries(flatSeries); }