public ActionResult Create([Bind(Include = "ID,fromemail,toemail,subjectemail,messageemail,curuser")] Mail mail) { if (ModelState.IsValid) { db.Mails.Add(mail); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(mail)); }
//Вызов окна подтверждения удаления записи для Главной таблицы, а также удаление записи private void DeleteInMainTable() { DeleteMail = new ShowOrDeleteInMainTable(); int selectedIndex; int selectedRow = dataGrid_MainTable.SelectedIndex; if (selectedRow >= 0) { DeleteMail.SetData(mailArr[selectedRow], ShowOrDeleteInMainTable.ModeWindow.DeleteConfirm); selectedIndex = mailArr[selectedRow].mail_Id; } else { MessageBox.Show("Выделите запись которую желаете удалить", "Внимание", MessageBoxButton.OK, MessageBoxImage.Warning); return; } DeleteMail.Owner = this; bool?result = DeleteMail.ShowDialog(); if (result == true) { using (MailContext context = new MailContext()) { Mail mail = context.Mail.FirstOrDefault <Mail>(c => c.mail_Id == selectedIndex); context.Mail.Remove(mail); context.SaveChanges(); MessageBox.Show("Запись №" + selectedIndex + " в Главной таблице удалена успешно!", "Успешно", MessageBoxButton.OK, MessageBoxImage.Information); RefreshMainTable(); } } }
public async Task <IActionResult> AddMailsAsync(Mail mail) { string message = string.Empty; try { if (ModelState.IsValid) { var apiKey = configuration.GetSection("SENDGRID_API_KEY").Value; var client = new SendGridClient(apiKey); MailModel model = new MailModel(); model.MailFrom = mail.From; message = model.SetMailTo(mail.To); if (message != string.Empty) { return(BadRequest(message)); } model.Title = mail.Title; model.Body = mail.Body; await MailService.SendAsync(model, client); db.Mails.Add(mail); db.SaveChanges(); return(CreatedAtAction(nameof(GetMails), new { id = mail.Id }, mail)); } return(BadRequest("Błedne dane wejsciowe")); } catch (Exception ex) { return(BadRequest(ex)); } }
//Вызов окна подтверждения удаления записи для таблицы Подписок, а также удаление записи private void DeleteInSubscriber() { DeleteSubscriber = new ShowOrDeleteInSubscriber(); int selectedIndex; int selectedRow = dataGrid_Subscriber.SelectedIndex; if (selectedRow >= 0) { DeleteSubscriber.SetData(subscriberArr[selectedRow], ShowOrDeleteInSubscriber.ModeWindow.DeleteConfirm); selectedIndex = subscriberArr[selectedRow].subscriber_Id; } else { MessageBox.Show("Выделите запись которую желаете удалить", "Внимание", MessageBoxButton.OK, MessageBoxImage.Warning); return; } DeleteSubscriber.Owner = this; bool?result = DeleteSubscriber.ShowDialog(); if (result == true) { using (MailContext context = new MailContext()) { Subscriber subscriber = (Subscriber)context.Subscribers.FirstOrDefault(c => c.subscriber_Id == selectedIndex); List <Subscription> subscriptions = context.Subscriptions.Where(c => c.id_Subscriber.subscriber_Id == subscriber.subscriber_Id).ToList(); List <int> subscriptionsId = new List <int>(); foreach (Subscription subscription in subscriptions) { subscriptionsId.Add(subscription.subscription_Id); } //Проверка на наличие ссылки на удаляемую запись List <Mail> mails = context.Mail.Where(c => subscriptionsId.Contains(c.id_Subscription.subscription_Id)).ToList(); if (mails.Count > 0) { if (MessageBox.Show("Внимание! Удаление " + selectedIndex + " записи таблице приведет к удалению " + subscriptions.Count + " подписок в таблице Подписок! \n" + " А также к обнулению " + mails.Count + " ссылок на подписку в Главной таблице!" + "\n Вы уверены что хотите удалить " + selectedIndex + " запись в таблице Подписок?" , "Внимание", MessageBoxButton.YesNo, MessageBoxImage.Warning) == MessageBoxResult.No) { return; } } context.Subscribers.Remove(subscriber); context.SaveChanges(); MessageBox.Show("Запись №" + selectedIndex + " в таблице Подписчиков удалена успешно!", "Успешно", MessageBoxButton.OK, MessageBoxImage.Information); RefreshSubscriberTable(); RefreshSubscriptionTable(); RefreshMainTable(); } } }
//Создание БД private static void CreateTables() { using (MailContext context = new MailContext()) { context.Database.Create(); context.SaveChanges(); Console.WriteLine("Все прошло удачно!"); } }
//Метод для заполнения таблицы 'Подписки' тестовыми значениями private void AutoInsertSubscriptions() { using (MailContext context = new MailContext()) { try { Subscription subscription = new Subscription(); List <Subscription> subscriptions = new List <Subscription>(); IQueryable <Edition> editions = context.Editions.Select(c => c); IQueryable <Subscriber> subscribers = context.Subscribers.Select(c => c); Edition[] editionsArr = new Edition[editions.Count()]; int i = 0; foreach (Edition edition in editions) { editionsArr[i] = edition; i++; } int j = 0; foreach (Subscriber subscriber in subscribers) { subscription.id_Subscriber = subscriber; if (j == editionsArr.Length) { j = 0; } subscription.id_Edition = editionsArr[j]; subscription.date_Сreation = DateTime.Today; subscription.date_Expiration = DateTime.Parse((DateTime.Today.AddMonths(j)).ToString()); subscriptions.Add(subscription); j++; subscription = new Subscription(); } context.Subscriptions.AddRange(subscriptions); context.SaveChanges(); } catch (Exception e) { Console.WriteLine("Ошибка при заполнении таблицы 'Подписки' Текст ошибки:" + e.ToString()); } } }
public IActionResult AddMails(Mail mail) { try { if (ModelState.IsValid) { db.Mails.Add(mail); db.SaveChanges(); return(CreatedAtAction(nameof(GetMails), new { id = mail.Id }, mail)); } return(BadRequest("Błedne dane wejsciowe")); } catch (Exception ex) { return(BadRequest(ex)); } }
//Метод для заполнения таблицы 'Типы операций' тестовыми значениями private void AutoInsertOperations() { string[] typeOperations = new string[] { "Прием", "Отправка" }; using (MailContext context = new MailContext()) { Operation operation = new Operation(); foreach (string tp in typeOperations) { operation.type_Operation = tp; context.Operations.Add(operation); context.SaveChanges(); } } }
//Метод для заполнения таблицы 'Типы почтовых отправлений' тестовыми значениями private void AutoInsertMailings() { string[] typeMailings = new string[] { "Закрытые письма", "Почтовые карточки", "Бандероли", "Посылки", "Денежные переводы", "Периодические издания" }; using (MailContext context = new MailContext()) { Mailing mailing = new Mailing(); foreach (string tm in typeMailings) { mailing.type_Mailing = tm; context.Mailings.Add(mailing); context.SaveChanges(); } } }
//Метод для заполнения таблицы 'Издания' тестовыми значениями private void AutoInsertEditions() { string[] nameEditions = new string[] { "Правда", "Телеском", "Книга рекордов Гинеса", "Умник" , "Фазы луны", "Студентские рефераты", "Туды кого то там" , "Все о всем", "Все телефоны Украины", "Октябрь" }; using (MailContext context = new MailContext()) { try { IQueryable <Periodical> periodicals = context.Periodicals.Select(c => c); Edition edition = new Edition(); List <Edition> editions = new List <Edition>(); int i = 0; foreach (Periodical periodical in periodicals) { i++; edition.id_type_Periodical = periodical; if (i == nameEditions.Length) { i = 0; } edition.name_Edition = nameEditions[i]; edition.cost = nameEditions.Length - i; editions.Add(edition); edition = new Edition(); } context.Editions.AddRange(editions); context.SaveChanges(); } catch (Exception e) { Console.WriteLine("Ошибка при заполнении таблицы 'Издания' Текст ошибки:" + e.ToString()); } } }
//Метод для заполнения таблицы 'Типы периодических изданий' тестовыми значениями private void AutoInsertPeriodicals() { string[] typePeriodicals = new string[] { "Газета", "Журнал", "Ежегодник" , "Научный журнал", "Календари", "Реферативный сборник", "Библиографический указатель" , "Информационный бюллетень", "Справочник", "Литературный журнал" }; using (MailContext context = new MailContext()) { Periodical periodical = new Periodical(); foreach (string tp in typePeriodicals) { periodical.type_Edition = tp; context.Periodicals.Add(periodical); context.SaveChanges(); } } }
public async Task <IActionResult> PostEmailItemAsync(Email email) { Random rnd = new Random(); email.Id = rnd.Next(); email.CreateTime = DateTime.Now; try { _context.Emails.Add(email); _context.SaveChanges(); await emailService.SendEmailAsync(email.Recipients, email.Subject, email.Body); email.Result = "Ok"; } catch (Exception e) { email.Result = "Failed"; email.FailedMessage = e.ToString(); Console.WriteLine(e.ToString()); } return(Ok(email)); }
public void Save() => _db.SaveChanges();
//Событие кнопки "ОК" private void button_Click_OK(object sender, RoutedEventArgs e) { Operation operation = null; Mailing mailing = null; Subscription subscription = null; string senderAddress = null; string recipientAddress = null; float weight; DateTime dateOperation; decimal price; using (MailContext context = new MailContext()) { Mail mail = new Mail(); if (currentMW == ModeWindow.Update) { mail = context.Mail.FirstOrDefault(c => c.mail_Id == updateMail.mail_Id); } if (IOUMainTable_ComboBox_id_Operation.SelectedIndex < 0) { MessageBox.Show("Ошибка (Операциция не выбрана)", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); return; } int operationId = operationsArr[IOUMainTable_ComboBox_id_Operation.SelectedIndex].operation_Id; operation = context.Operations.FirstOrDefault <Operation>(c => c.operation_Id == operationId); if (operation == null) { MessageBox.Show("Ошибка (Операциция не найдена! Попробуйте выбрать заново)", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); SetData(); return; } if (IOUMainTable_ComboBox_id_Mailing.SelectedIndex < 0) { MessageBox.Show("Ошибка (Тип не выбран)", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); return; } int mailingId = mailingsArr[IOUMainTable_ComboBox_id_Mailing.SelectedIndex].mailing_Id; mailing = context.Mailings.FirstOrDefault <Mailing>(c => c.mailing_Id == mailingId); if (mailing == null) { MessageBox.Show("Ошибка (Тип не найден! Попробуйте выбрать заново)", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); SetData(); return; } if (IOUMainTable_ComboBox_id_Subscription.SelectedIndex > 0) { int subscriptionId = subscriptionsArr[IOUMainTable_ComboBox_id_Subscription.SelectedIndex - cbId_SubStep].subscription_Id; subscription = context.Subscriptions.FirstOrDefault <Subscription>(c => c.subscription_Id == subscriptionId); } else if (IOUMainTable_ComboBox_id_Subscription.SelectedIndex == 0) { canSubNull = true; } if (subscription == null && canSubNull == false) { MessageBox.Show("Ошибка (Подписка не найдена! Попробуйте выбрать заново)", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); SetData(); return; } senderAddress = IOUMainTable_TBox_sender_Address.Text; if (isValidAddress(senderAddress) == false) { MessageBox.Show("Ошибка! (Адрес отправителя введен неправильно или не введен вовсе)" + "\n" + "Внимание! Максимальная длинна адреса " + maxLenghtStringAddress + " символов" + "\n" + "Форма записи(Страна, город, 'район', улица, дом, 'картира'" + "\n" + "' ' - необязательны для ввода в случае их отсутствия" , "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); senderAddress = null; return; } recipientAddress = IOUMainTable_TBox_recipient_Address.Text; if (isValidAddress(recipientAddress) == false) { MessageBox.Show("Ошибка! (Адрес получателя введен неправильно или не введен вовсе)" + "\n" + "Внимание! Максимальная длинна адреса " + maxLenghtStringAddress + " символов" + "\n" + "Форма записи(Страна, город, 'район', улица, дом, 'картира'" + "\n" + "' ' - необязательны для ввода в случае их отсутствия" , "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); recipientAddress = null; return; } string weightStr = IOUMainTable_TBox_weight_Package.Text; weightStr.Trim(); if (weightStr.IndexOf(".") == -1 && weightStr.IndexOf(",") == -1) { weightStr += ".0"; } else { weightStr = weightStr.Replace(",", "."); } if (float.TryParse(weightStr, NumberStyles.Float, new CultureInfo("en-US"), out weight)) { weight = float.Parse(weightStr, NumberStyles.Float, new CultureInfo("en-US")); } else { MessageBox.Show("Ошибка (Вес пакета введен не правильно)", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); return; } if (weight <= 0) { MessageBox.Show("Ошибка (Вес пакета не может быть меньше нуля или равняться ему)", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); return; } string dateStr = IOUMainTable_TBox_date_Operation.Text; dateOperation = DateTime.Parse(dateStr); string priceStr = IOUMainTable_TBox_price.Text; priceStr.Trim(); if (priceStr.IndexOf(".") == -1 && priceStr.IndexOf(",") == -1) { priceStr += ".0"; } else { priceStr = priceStr.Replace(",", "."); } if (decimal.TryParse(priceStr, NumberStyles.Float, new CultureInfo("en-US"), out price)) { price = decimal.Parse(priceStr, NumberStyles.Float, new CultureInfo("en-US")); } else { MessageBox.Show("Ошибка (Цена введена не правильно)", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); return; } if (price <= 0) { MessageBox.Show("Ошибка (Вес пакета не может быть меньше нуля или равняться ему)", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); return; } if (operation != null && mailing != null && senderAddress != null && recipientAddress != null && weight != 0 && dateOperation != null && price != 0) { mail.id_Operation = operation; mail.id_Mailing = mailing; mail.id_Subscription = subscription; mail.sender_Address = senderAddress; mail.recipient_Address = recipientAddress; mail.weight_Package = weight; mail.date_Operation = dateOperation; mail.price = price; if (currentMW == ModeWindow.Insert) { MessageBoxResult result = MessageBox.Show("Вы уверенны что хотите добавить новую запись в главную таблицу?", "Подтверждение", MessageBoxButton.YesNo, MessageBoxImage.Question, MessageBoxResult.Yes, MessageBoxOptions.None); if (result == MessageBoxResult.No) { return; } context.Mail.Add(mail); context.SaveChanges(); MessageBox.Show("Добавление записи в главную таблицу прошло успешно", "Успешно", MessageBoxButton.OK, MessageBoxImage.None); } if (currentMW == ModeWindow.Update) { MessageBoxResult result = MessageBox.Show("Вы уверенны что хотите изменить " + mail.mail_Id + " запись в главной таблице?", "Подтверждение", MessageBoxButton.YesNo, MessageBoxImage.Question, MessageBoxResult.Yes, MessageBoxOptions.None); if (result == MessageBoxResult.No) { return; } context.SaveChanges(); MessageBox.Show("Изменение записи в главной таблице прошло успешно", "Успешно", MessageBoxButton.OK, MessageBoxImage.None); } } else { MessageBox.Show("Невозможно продолжить операцию: (Данные потеряны)", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); return; } } mainWindow.RefreshMainTable(); this.Close(); }
//Событие кнопки "ОК" private void button_Click_OK(object sender, RoutedEventArgs e) { using (MailContext context = new MailContext()) { Subscriber subscriber = new Subscriber(); if (currentMW == ModeWindow.Update) { subscriber = context.Subscribers.FirstOrDefault(c => c.subscriber_Id == updateSubscriber.subscriber_Id); } string lastName = IOUSubscriber_TBox_last_Name.Text; lastName.Trim(); if (lastName.Length > maxLenghtStringName) { MessageBox.Show("Ошибка (Фамилия слишком большая, максиальное количество символов: " + maxLenghtStringName + ")", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); return; } string firstName = IOUSubscriber_TBox_first_Name.Text; firstName.Trim(); if (firstName.Length > maxLenghtStringName) { MessageBox.Show("Ошибка (Имя слишком большое, максиальное количество символов: " + maxLenghtStringName + ")", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); return; } string middleName = IOUSubscriber_TBox_middle_Name.Text; middleName.Trim(); if (middleName.Length > maxLenghtStringName) { MessageBox.Show("Ошибка (Отчество слишком большое, максиальное количество символов: " + maxLenghtStringName + ")", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); return; } string subAddress = IOUSubscriber_TBox_sub_Address.Text; subAddress.Trim(); if (isValidAddress(subAddress) == false) { MessageBox.Show("Ошибка! (Адрес подписчика введен неправильно или не введен вовсе)" + "\n" + "Внимание! Максимальная длинна адреса " + maxLenghtStringAddress + " символов" + "\n" + "Форма записи(Страна, город, 'район', улица, дом, 'картира'" + "\n" + "' ' - необязательны для ввода в случае их отсутствия" , "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); subAddress = null; return; } if (lastName != null && firstName != null && middleName != null && subAddress != null) { subscriber.last_Name = lastName; subscriber.first_Name = firstName; subscriber.middle_Name = middleName; subscriber.sub_Address = subAddress; if (currentMW == ModeWindow.Insert) { MessageBoxResult result = MessageBox.Show("Вы уверенны что хотите добавить новую запись в таблицу 'Подписчики'?", "Подтверждение", MessageBoxButton.YesNo, MessageBoxImage.Question, MessageBoxResult.Yes, MessageBoxOptions.None); if (result == MessageBoxResult.No) { return; } context.Subscribers.Add(subscriber); context.SaveChanges(); MessageBox.Show("Добавление записи в таблицу 'Подписчики' прошло успешно", "Успешно", MessageBoxButton.OK, MessageBoxImage.None); } if (currentMW == ModeWindow.Update) { MessageBoxResult result = MessageBox.Show("Вы уверенны что хотите изменить " + subscriber.subscriber_Id + " запись в таблицу 'Подписчики'?", "Подтверждение", MessageBoxButton.YesNo, MessageBoxImage.Question, MessageBoxResult.Yes, MessageBoxOptions.None); if (result == MessageBoxResult.No) { return; } context.SaveChanges(); MessageBox.Show("Изменение записи в таблицу 'Подписчики' прошло успешно", "Успешно", MessageBoxButton.OK, MessageBoxImage.None); } } else { MessageBox.Show("Невозможно продолжить операцию: (Данные потеряны)", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); return; } } mainWindow.RefreshSubscriberTable(); this.Close(); }
//Событие кнопки "ОК" private void button_Click_OK(object sender, RoutedEventArgs e) { Subscriber subscriber = null; Edition edition = null; DateTime dateCreate; DateTime dateExpiration; using (MailContext context = new MailContext()) { Subscription subscription = new Subscription(); if (currentMW == ModeWindow.Update) { subscription = context.Subscriptions.FirstOrDefault(c => c.subscription_Id == updateSubscription.subscription_Id); } if (IOUSubscription_ComboBox_id_Subscriber.SelectedIndex < 0) { MessageBox.Show("Ошибка (Подписчик не выбран)", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); return; } int subscriberId = subscribersArr[IOUSubscription_ComboBox_id_Subscriber.SelectedIndex].subscriber_Id; subscriber = context.Subscribers.FirstOrDefault <Subscriber>(c => c.subscriber_Id == subscriberId); if (subscriber == null) { MessageBox.Show("Ошибка (Подписчик не найден! Попробуйте выбрать заново)", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); SetData(); return; } if (IOUSubscription_ComboBox_id_Edition.SelectedIndex < 0) { MessageBox.Show("Ошибка (Издание не выбран)", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); return; } int editionId = editionsArr[IOUSubscription_ComboBox_id_Edition.SelectedIndex].edition_Id; edition = context.Editions.FirstOrDefault <Edition>(c => c.edition_Id == editionId); if (edition == null) { MessageBox.Show("Ошибка (Издание не найден! Попробуйте выбрать заново)", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); SetData(); return; } string dateCreateStr = IOUSubscription_TBox_date_Create.Text; if (DateTime.TryParse(dateCreateStr, out dateCreate) == true) { dateCreate = DateTime.Parse(dateCreateStr); } string dateExpirationStr = IOUSubscription_DP_date_Expiration.Text; if (DateTime.TryParse(dateExpirationStr, out dateExpiration) == true) { dateExpiration = DateTime.Parse(dateExpirationStr); } else { MessageBox.Show("Ошибка (Дата введена неправильно! Попробуйте выбрать заново)", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); } if (dateCreate >= dateExpiration) { MessageBox.Show("Ошибка (Дата начала подписки не может быть больше даты завершения! Попробуйте выбрать заново)", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); return; } if (subscriber != null && edition != null && dateCreate != null && dateExpiration != null) { subscription.id_Subscriber = subscriber; subscription.id_Edition = edition; subscription.date_Сreation = dateCreate; subscription.date_Expiration = dateExpiration; if (currentMW == ModeWindow.Insert) { MessageBoxResult result = MessageBox.Show("Вы уверенны что хотите добавить новую запись в таблицу 'Подписки'?", "Подтверждение", MessageBoxButton.YesNo, MessageBoxImage.Question, MessageBoxResult.Yes, MessageBoxOptions.None); if (result == MessageBoxResult.No) { return; } context.Subscriptions.Add(subscription); context.SaveChanges(); MessageBox.Show("Добавление записи в таблицу 'Подписки' прошло успешно", "Успешно", MessageBoxButton.OK, MessageBoxImage.None); } if (currentMW == ModeWindow.Update) { MessageBoxResult result = MessageBox.Show("Вы уверенны что хотите изменить " + subscription.subscription_Id + " запись в таблицу 'Подписки'?", "Подтверждение", MessageBoxButton.YesNo, MessageBoxImage.Question, MessageBoxResult.Yes, MessageBoxOptions.None); if (result == MessageBoxResult.No) { return; } context.SaveChanges(); MessageBox.Show("Изменение записи в таблицу 'Подписки' прошло успешно", "Успешно", MessageBoxButton.OK, MessageBoxImage.None); } } else { MessageBox.Show("Невозможно продолжить операцию: (Данные потеряны)", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); return; } } mainWindow.RefreshSubscriptionTable(); this.Close(); }
//Метод для заполнения Главной таблицы тестовыми значениями private void AutoInsertMainTable() { string[] senderAddress = new string[] { "Украина г.Украинский, ул.Украины, д.32, кв.5" , "Россия г.Российсткий, ул.России, д.24, кв.12" , "Белоруссия г.Белороссийский, ул.Белорусии, д.43, кв.34" , "Польша г.Польский, ул.Польши, д.17, кв.45" , "США г.Штацкий, ул.Штатов, д.42, кв.15" , "ЮАР г.ЮАРский, ул.ЮАРцев, д.36, кв.8" , "Турция г.Турецкий, ул.Турции, д.7, кв.44" , "Франция г.Французкий, ул.Франции, д.34, кв.25" , "Германия г.Германский, ул.Германии, д.54, кв.6" , "Мексика г.Мексиканский, ул.Мексики, д.31, кв.17" }; string[] recipientAddress = new string[] { "Украина г.Украинский, ул.Украины, д.32, кв.5" , "Россия г.Российсткий, ул.России, д.24, кв.12" , "Белоруссия г.Белороссийский, ул.Белорусии, д.43, кв.34" , "Польша г.Польский, ул.Польши, д.17, кв.45" , "США г.Штацкий, ул.Штатов, д.42, кв.15" , "ЮАР г.ЮАРский, ул.ЮАРцев, д.36, кв.8" , "Турция г.Турецкий, ул.Турции, д.7, кв.44" , "Франция г.Французкий, ул.Франции, д.34, кв.25" , "Германия г.Германский, ул.Германии, д.54, кв.6" , "Мексика г.Мексиканский, ул.Мексики, д.31, кв.17" }; using (MailContext context = new MailContext()) { try { Mail mail = new Mail(); List <Mail> mails = new List <Mail>(); Operation[] operations = context.Operations.Select(c => c).ToArray(); Mailing[] mailings = context.Mailings.Select(c => c).ToArray(); Subscription[] subscriptions = context.Subscriptions.Select(c => c).ToArray(); int o = 0; int m = 0; int s = 0; int sa = 0; int ra = 1; for (int x = 0; x < senderAddress.Length; x++) { if (o == operations.Length) { o = 0; } if (m == mailings.Length) { m = 0; } if (s == subscriptions.Length) { s = 0; } if (sa == senderAddress.Length) { sa = 0; } if (ra == recipientAddress.Length + 1) { ra = 1; } mail.id_Operation = operations[o]; mail.id_Mailing = mailings[m]; mail.id_Subscription = subscriptions[s]; mail.sender_Address = senderAddress[sa]; mail.recipient_Address = recipientAddress[recipientAddress.Length - ra]; mail.weight_Package = x / (10 - x); mail.date_Operation = DateTime.Now; mail.price = x * (10 - x); mails.Add(mail); mail = new Mail(); o++; m++; s++; sa++; ra++; } context.Mail.AddRange(mails); context.SaveChanges(); } catch (Exception e) { Console.WriteLine("Ошибка при заполнении главной таблицы Текст ошибки:" + e.ToString()); } } }
//Метод для заполнения таблицы 'Подписчики на периодические издания' тестовыми значениями private void AutoInsertSubscribers() { string[] lastNames = new string[] { "Пупкин", "Печкин", "Куров", "Синицын", "Скороход" , "Домов", "Колотушкин", "Карченко", "Пушкин", "Тарин" }; string[] firstNames = new string[] { "Владислав", "Илья", "Александр", "Дмитрий", "Виктор" , "Станислав", "Константин", "Ян", "Максим", "Пётр" }; string[] midleNames = new string[] { "Александрович", "Максимов", "Петрович", "Янов", "Владиславович" , "Ильич", "Дмитрович", "Константинович", "Станиславович", "Викторович" }; string[] subAddresses = new string[] { "Украина г.Украинский, ул.Украины, д.32, кв.5" , "Россия г.Российсткий, ул.России, д.24, кв.12" , "Белоруссия г.Белороссийский, ул.Белорусии, д.43, кв.34" , "Польша г.Польский, ул.Польши, д.17, кв.45" , "США г.Штацкий, ул.Штатов, д.42, кв.15" , "ЮАР г.ЮАРский, ул.ЮАРцев, д.36, кв.8" , "Турция г.Турецкий, ул.Турции, д.7, кв.44" , "Франция г.Французкий, ул.Франции, д.34, кв.25" , "Германия г.Германский, ул.Германии, д.54, кв.6" , "Мексика г.Мексиканский, ул.Мексики, д.31, кв.17" }; using (MailContext context = new MailContext()) { try { Subscriber subscriber = new Subscriber(); List <Subscriber> subscribers = new List <Subscriber>(); for (int i = 0; i < lastNames.Length; i++) { subscriber.last_Name = lastNames[i]; subscriber.first_Name = firstNames[i]; subscriber.middle_Name = midleNames[i]; subscriber.sub_Address = subAddresses[i]; subscribers.Add(subscriber); subscriber = new Subscriber(); } context.Subscribers.AddRange(subscribers); context.SaveChanges(); } catch (Exception e) { Console.WriteLine("Ошибка при заполнении таблицы 'Подписчики на периодические издания' Текст ошибки:" + e.ToString()); } } }