public async Task <ICommandResult> Handle(MeasureUnitChangeCommand message) { try { var measureUnitFromDb = await _measureUnitService.GetById(message.UnitId); if (measureUnitFromDb == null) { throw new MessageException(ResourceKey.LocaleStringResource_NotFound); } MeasureUnit measure = new MeasureUnit(measureUnitFromDb); measure.Change(message); await _measureUnitService.ChangeToDb(measure); ICommandResult result = new CommandResult { Message = "", ObjectId = measure.Id, Status = CommandResult.StatusEnum.Sucess }; return(result); } catch (Exception e) { e.Data["Param"] = message; ICommandResult result = new CommandResult() { Message = e.Message, Status = CommandResult.StatusEnum.Fail }; return(result); } }