public Task <double> Get(long id, string fromMeasureUnitSymbol, string toMeasureUnitSymbol, double value) { var command = new MeasureUnitCommand { DimensionId = id, Value = value, FromUnitSymbol = fromMeasureUnitSymbol, ToUnitSymbol = toMeasureUnitSymbol }; return(_mediator.Send(command)); }
public async Task <double> Handle(MeasureUnitCommand request, CancellationToken cancellationToken) { var dimension = await _measureDimensionRepository.GetById(request.DimensionId); var arg = new MeasurementArg { FromValue = request.Value, FromUnitSymbol = new Symbol(request.FromUnitSymbol), ToUnitSymbol = new Symbol(request.ToUnitSymbol) }; var measureValue = dimension.MeasureUnitsFor(arg, _formulaExpressionEvaluator); return(measureValue); }