public static void InsertDataMonogDB() { var connectionStr = "mongodb://localhost"; var client = new MongoClient(connectionStr); var server = client.GetServer(); var db = server.GetDatabase("supermarketExtra"); //Insert Vendor var expenses = db.GetCollection<MongoVendorExpense>(vendorCollectionString); var obj = new MongoVendorExpense() { VendorName = "Svoge", Month = 3, Year = 1998, Amount = 200 }; expenses.Insert<MongoVendorExpense>(obj); //Insert products reports var prodReport = db.GetCollection<MongoProductReport>(productColelctionString); var bira1 = new MongoProductReport() { ProductId = 3, ProductName = "Zagorka", VendorName = "Svoge", TotalIncomes = 234, TotalQuantitySold = 14 }; var bira2 = new MongoProductReport() { ProductId = 2, ProductName = "Kamenitza", VendorName = "Svoge", TotalIncomes = 334, TotalQuantitySold = 14 }; var bira3 = new MongoProductReport() { ProductId = 1, ProductName = "Amstel", VendorName = "Svoge", TotalIncomes = 14, TotalQuantitySold = 14 }; var bira4 = new MongoProductReport() { ProductId = 5, ProductName = "Korola", VendorName = "Svoge", TotalIncomes = 2234, TotalQuantitySold = 14 }; prodReport.Insert<MongoProductReport>(bira1); prodReport.Insert<MongoProductReport>(bira2); prodReport.Insert<MongoProductReport>(bira3); prodReport.Insert<MongoProductReport>(bira4); }
/// <summary> /// Method for extracting expenses reports in XML format /// </summary> /// <param name="filePath">Filepath for the .xml file</param> public static void ReadVendorMonthlyExpenses(string filePath) { XmlReader reader = XmlReader.Create(filePath); List<MongoVendorExpense> mongoVendorExpensesList = new List<MongoVendorExpense>(); using (var msSQLServerContext = new SupermarketEntities()) { using (reader) { int vendorId = 0; while (reader.Read()) { //Insert a new vendor if (reader.NodeType == XmlNodeType.Element && reader.Name == "sale") { string vendorName = reader.GetAttribute("vendor"); var vendor = msSQLServerContext.Vendors.FirstOrDefault(v => v.VendorName == vendorName); if (vendor == null) { // the vendor doesn't exist vendor = new Vendor { VendorName = vendorName }; msSQLServerContext.Vendors.Add(vendor); msSQLServerContext.SaveChanges(); } vendorId = vendor.VendorId; } //Insert Expenses if (reader.NodeType == XmlNodeType.Element && reader.Name == "expenses") { string month = reader.GetAttribute("month"); DateTime monthAsDate = DateTime.ParseExact(month, "MMM-yyyy", CultureInfo.InvariantCulture); decimal amount = reader.ReadElementContentAsDecimal(); var vendorMonthlyExpense = new VendorExpense { VendorId = vendorId, Month = monthAsDate.Month, Year = monthAsDate.Year, Amount = amount }; var mongoVendorExpense = new MongoVendorExpense { VendorId = vendorId, Month = monthAsDate.Month, Year = monthAsDate.Year, Amount = amount }; mongoVendorExpensesList.Add(mongoVendorExpense); msSQLServerContext.VendorExpenses.Add(vendorMonthlyExpense); } } } MongoDBManager<MongoVendorExpense> mongoDBInserter = new MongoDBManager<MongoVendorExpense>(); mongoDBInserter.InsertInMongoDB(mongoVendorExpensesList, "VendorExpenses"); msSQLServerContext.SaveChanges(); } }