public CSVDataCreationResult SaveToDatabase(List <CSVDataDTO> dataInFile)
        {
            List <CSVDataDTO> DataInFile = dataInFile;

            GetSites();

            GetClients();

            SetClientsThatDoNotExist();

            SetSitesThatDoNotExist();

            RemoveData();

            foreach (var dataDTO in DataInFile)
            {
                var csvData = new CSVData
                {
                    Client  = Clients.First(c => c.Id == dataDTO.ClientId),
                    Date    = dataDTO.Date,
                    FooData = dataDTO.FooData,
                    Site    = Sites.First(s => s.Name == dataDTO.Site),
                };

                CSVDataEntities.Add(csvData);
            }

            _repostory.SaveManyAsync(CSVDataEntities);

            var success = new CSVDataCreationResult {
                SuccessResult         = DataInFile,
                SitesThatNeedCreating = SitesThatDoNotExist.Select(s => s.Site).ToList()
            };

            return(success);
        }