private void btnAdicionarCategoria_Click(object sender, EventArgs e) { try { if (string.IsNullOrWhiteSpace(this.cboListaDeCategoria.Text)) { throw new GenericWarningException("Informe o nome da categoria!"); } Categoria categoria = new Categoria() { Nome = this.cboListaDeCategoria.Text }; this.categoriaBusiness.CadastrarCategoria(categoria); MessageBox.Show(Mensagens.CadastroCategoriaSucesso, Mensagens.Mensagem, MessageBoxButtons.OK, MessageBoxIcon.Information); this.CarregarCategorias(); } catch (GenericWarningException ex) { MessageBox.Show(ex.Message, Mensagens.Mensagem, MessageBoxButtons.OK, MessageBoxIcon.Warning); } catch (CategoryAlreadyExistsException ex) { MessageBox.Show(ex.Message, Mensagens.Mensagem, MessageBoxButtons.OK, MessageBoxIcon.Warning); } catch (Exception) { MessageBox.Show(Mensagens.CadastroCategoriaFalha, Mensagens.Mensagem, MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public void CadastrarCategoria(Categoria categoria) { if (categoria == null) { throw new ArgumentNullException(); } //Verifica se já existe uma categoria cadastrada com o nome informado foreach (string nome in this.RecuperarNomesCategorias()) { if (nome == categoria.Nome) { throw new CategoryAlreadyExistsException(); } } this.repository.Add(categoria); this.repository.Save(); }