public void Delete(ProducerDto producer) { if (producer.HasCompany) { MessageBox.Show(String.Format("Производителя \"{0}\" нельзя удалить, потому что он имеет компанию в Интерфейсе производителя", producer.Name), "Удаление производителя", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } var dialogResult = MessageBox.Show(String.Format("Удалить производителя \"{0}\"", producer.Name), "Удаление производителя", MessageBoxButtons.OKCancel, MessageBoxIcon.Question); if (dialogResult == DialogResult.Cancel) { return; } Action(s => { s.DeleteProducer(producer.Id); producers.Remove(producer); Producers.Remove(producer); }); }
public void DeleteProducer(Producer producer) { if (Producers.Contains(producer)) { Producers.Remove(producer); } foreach (var film in producer.Films) { film.Producers.Remove(producer); DataHelper.FilmToProducerConnections[film.ID].Remove(producer.ID); } }