public void Import() { // скачивание прайса ProccessMesenger.Write("Импорт: скачивание прайса"); var begemotPrice = new BegemotParser(); DataTable table = begemotPrice.GetPriceTable(); // импорт прайса в базу данных ProccessMesenger.Write("Импорт: загрузка прайса в базу данных"); using (var copy = new SqlBulkCopy(Context.Inst.Database.Connection.ConnectionString)) { for (int i = 0; i < table.Columns.Count; i++) { copy.ColumnMappings.Add(i, i); } copy.DestinationTableName = "BegemotProductSet"; copy.WriteToServer(table); } // обработка импортированных данных ProccessMesenger.Write("Импорт: обработка импортированных данных"); var bulkUpdateSql = File.ReadAllText("SQL/bulk update/_all.sql", Encoding.GetEncoding("windows-1251")); var executed = Context.Inst.Database.ExecuteSqlCommand(bulkUpdateSql); ProccessMesenger.Write("Импорт: синхронизация товаров"); Product.SyncProducts(); ProccessMesenger.Write("Импорт: успешно завершен"); }
public void LoadFile(string filePath) { var parser = new BegemotParser(); var saleRows = parser.ParseSale(filePath); _data = new List<BegemotSalePrice>(); foreach (var saleRow in saleRows) { var salePrice = new BegemotSalePrice(); salePrice.Article = saleRow.Article; salePrice.RetailPrice = saleRow.RetailPrice; salePrice.WholeSalePrice = saleRow.WholeSalePrice; salePrice.RetailPriceOld = saleRow.RetailPriceOld; salePrice.WholeSalePriceOld = saleRow.WholeSalePriceOld; _data.Add(salePrice); } }