public void OrdersEdit(ListView lvData) { foreach (ListViewItem selectedItem in lvData.SelectedItems) { using (var ctx = new DCModel()) { var order = (Заказы)selectedItem.Tag; var formOrderUpdate = new OrdersInsertUpdate(FormType.Update, order, ctx); if (formOrderUpdate.ShowDialog() == DialogResult.OK) { var id = order.C_; var original = ctx.Заказы.Find(id); if (original != null) { original.Заказчики = formOrderUpdate.Customer; original.Дата_открытия = formOrderUpdate.OpeningDate; original.Дата_закрытия = formOrderUpdate.ClosingDate; original.Операторы = formOrderUpdate.Operator; original.Курьеры = formOrderUpdate.Courier; original.Доп__скидка = (int)formOrderUpdate.Discount; original.Типы_оплаты = formOrderUpdate.PaymentType; original.Стоимость_доставки = formOrderUpdate.DeliveryCost; ctx.SaveChanges(); } } } } }
public void InsertOrder(ListView lvData) { using (var ctx = new DCModel()) { if (ctx.Заказчики.Count() == 0) { MessageBox.Show("Нет подходящих заказчиков"); return; } if (ctx.Операторы.Count() == 0) { MessageBox.Show("Нет подходящих Операторов"); return; } if (ctx.Курьеры.Count() == 0) { MessageBox.Show("Нет подходящих курьеров"); return; } if (ctx.Типы_оплаты.Count() == 0) { MessageBox.Show("Нет подходящих типов оплаты"); return; } var orderInsert = new OrdersInsertUpdate(FormType.Insert, null, ctx, lvData); if (orderInsert.ShowDialog() == DialogResult.OK) { var newOrder = new Заказы { Заказчики = orderInsert.Customer, Дата_открытия = orderInsert.OpeningDate, Дата_закрытия = orderInsert.ClosingDate, Операторы = orderInsert.Operator, Курьеры = orderInsert.Courier, Доп__скидка = (int)orderInsert.Discount, Типы_оплаты = orderInsert.PaymentType, Стоимость_доставки = orderInsert.DeliveryCost }; ctx.Заказы.Add(newOrder); ctx.SaveChanges(); var lvi = new ListViewItem(new[] { newOrder.Заказчики.DisplayMember, newOrder.Дата_открытия.ToLongDateString(), newOrder.Дата_закрытия.ToLongDateString(), newOrder.Операторы.DisplayMember, newOrder.Курьеры.DisplayMember, newOrder.Доп__скидка.ToString(), newOrder.Типы_оплаты.Название, newOrder.Стоимость_доставки.ToString(), }); lvi.Tag = newOrder; lvData.Items.Add(lvi); } } }