public virtual void RemoverAgendamento(int idAgendamento) { if (DateTime.Today >= Data) { throw new DataDeAgendamentoExpiradaException("Não é permitido remover um agendamento com data igual ou anterior ou à data atual."); } var agendamento = Agendamentos.Single(x => x.Id == idAgendamento); if (agendamento.Realizado) { throw new OperacaoNaoPermitidaParaAgendamentoRealizadoException("Não é permitido remover um agendamento que já foi realizado."); } Agendamentos.Remove(agendamento); CalculaPesoAgendado(); }