public Task <int> Handle(UpdateAssuntoCommand request, CancellationToken cancellationToken) { if (!request.IsValid()) { NotifyValidationErrors(request); return(Task.FromResult(0)); } var assunto = new Assunto(request.Id, request.Descricao); var existingAssunto = _assuntoRepository.GetAsNoTracking(x => assunto.Descricao.Contains(x.Descricao)); if (!existingAssunto.Equals(assunto)) { Bus.RaiseEvent(new DomainNotification(request.MessageType, "O Assunto já está sendo usado.")); return(Task.FromResult(0)); } _assuntoRepository.Update(assunto); if (Commit()) { //TO DO } return(Task.FromResult(assunto.Id)); }