private void deleteTag_Click(object sender, EventArgs e) { if (listTags.SelectedItems.Count > 0) { using (DataBaseEntities db = new DataBaseEntities()) { Tag tag = (Tag)listTags.SelectedItems[0].Tag; TagOfClient tagOfClient = db.TagOfClient.FirstOrDefault(t => t.TagID == tag.ID && t.ClientID == client.ID); if (db.TagOfClient.ToList().Exists(t => t.ID == tagOfClient.ID && t.ClientID == tagOfClient.ClientID)) { listTags.Items.Remove(listTags.SelectedItems[0]); db.TagOfClient.Remove(tagOfClient); } db.SaveChanges(); } } }
private void Save() { var results = new List <ValidationResult>(); var context = new ValidationContext(bindingSourceClient[0]); if (!Validator.TryValidateObject(client, context, results, true)) { foreach (var error in results) { MessageBox.Show(error.ErrorMessage, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } } if (MessageBox.Show("Сохранить?", "Сохранение", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { using (DataBaseEntities db = new DataBaseEntities()) { if (!db.Client.ToList().Exists(c => c.ID == client.ID)) { client.RegistrationDate = DateTime.Now; db.Client.Add((ModelDB.Client)bindingSourceClient[0]); } var tagOfClients = db.TagOfClient.ToList(); foreach (ListViewItem item in listTags.Items) { Tag tag = (Tag)item.Tag; TagOfClient tagOfClient = new TagOfClient { ClientID = client.ID, TagID = tag.ID }; if (tagOfClients.Exists(t => t.TagID == tagOfClient.TagID && t.ClientID == client.ID) == false) { db.Tag.Add(tag); db.TagOfClient.Add(tagOfClient); } } db.SaveChanges(); } } }