public static void Main() { // Creating MongoDb database. var dbMongoDb = new MediaDistributorsMongoData(); // Generating distributors. var genedartor = new DataGenerator(); var generatedDistributors = genedartor.GenerateDistributors(3); // Inserting to MongoDb. dbMongoDb.InsertToMongo(generatedDistributors); var distributorsToSql = dbMongoDb.GetFromMongo(); // Creating and insert to SQL Server database. var dbSql = new MediaMonitoringSystemDbContext(); foreach (var distributor in distributorsToSql) { dbSql.MediaDistributors.Add(distributor); } dbSql.SaveChanges(); >>>>>>> e1c871f4a51ce55ee53ae24534264957938a56bb var sqlite = new MediaMonitoringPricingData(); // Extracting zip file. IArchiever zipArchiver = new ZipArchiever(); string zipPath = "../../MOCK_DATA.zip"; string extractedPath = "../../Export/"; zipArchiver.UnArchieve(zipPath, extractedPath); IImporter excelImporter = new ExcelImporter(new MediaMonitoringSystemDbContext()); string[] paths = new string[] { "../../MOCK_DATA.zip", "../../Export/", "../../Export/MOCK_DATA/MOCK_DATA.xls" }; // Importing data from excel. IBulkImporter bulkImporter = new ExcelBulkImporter(zipArchiver, excelImporter, paths); bulkImporter.ImportAll(); // Creating PDF file. var pdfWriter = new PdfReportWriter(); pdfWriter.Generate(); // Generating JSONs files. var jsonExporter = new JsonReportWriter(); jsonExporter.Generate(); //var xmlReporter = new XMLReportWriter(); //xmlReporter.Generate(); }
public void Generate() { var db = new MediaMonitoringSystemDbContext(); var clients = db.Clients.Select(c => new { Name = c.Name, Themes = c.Themes.Select(t => new { Start = t.StartDate, End = t.EndDate, Theme = t.Name, Packages = t.Package.Medias.Select(m => new { Media = m.Name, Articles = m.Articles.Select(a => new { Title = a.Title, PublishedOn = a.PublishedOn, Content = a.Content }) .OrderBy(a => a.PublishedOn) }) .OrderBy(m => m.Media) }) .OrderBy(t => t.Start) }) .ToList(); foreach (var client in clients) { string fileName = "../../client-" + client.Name + ".xml"; Encoding encoding = Encoding.GetEncoding("windows-1251"); var xmlNode = new XElement("client", new XAttribute("name", client.Name), new XElement("themes", new XElement("theme", client.Name) ) ); xmlNode.Save(fileName); } }
public void GetJson() { var db = new MediaMonitoringSystemDbContext(); var medias = db.Medias .OrderBy(m => m.Id) .Select(m => new { Id = m.Id, Name = m.Name, Distributor = m.MediaDistributor.Name, TotalSells = db.Packages.Where(p => p.Medias.Contains(m)).Count(), Incomes = db.Packages.Where(p => p.Medias.Contains(m)).Sum(p => p.PricePerMonth) }) .ToList(); foreach (var media in medias) { var serializedMedia = JsonConvert.SerializeObject(media); Console.WriteLine(serializedMedia); } }
public void Generate() { Console.WriteLine("JSONs starting generate..."); var db = new MediaMonitoringSystemDbContext(); var medias = db.Medias .OrderBy(m => m.Id) .Select(m => new { Id = m.Id, Name = m.Name, Distributor = m.MediaDistributor.Name, TotalSells = db.Packages.Where(p => p.Medias.Contains(m)).Count(), //Incomes = db.Packages.Where(p => p.Medias.Contains(m)).Sum(p => p.PricePerMonth) }) .ToList(); if (!Directory.Exists(PathForJsonFiles)) { Directory.CreateDirectory(PathForJsonFiles); } foreach (var media in medias) { var serializedMedia = JsonConvert.SerializeObject(media); using (var writer = new StreamWriter(PathForJsonFiles + "/" + media.Id + ".json", false)) { writer.Write(JsonConvert.SerializeObject(serializedMedia, Formatting.Indented)); } Console.Write("."); } Console.WriteLine(); Console.WriteLine("JOSNs generated!"); }