private async Task LocalizeFlatResults(FlatResults flatResults, Guid clubId) { var settings = await _dbContext.Clubs .Where(c => c.Id == clubId ).Select(c => c.WeatherSettings).SingleOrDefaultAsync() .ConfigureAwait(false); if (settings == null) { return; } foreach (var race in flatResults.Races) { race.WindSpeed = _converter.Convert( race.WindSpeedMeterPerSecond, _converter.MeterPerSecond, settings?.WindSpeedUnits)?.ToString("N0"); race.WindGust = _converter.Convert( race.WindSpeedMeterPerSecond, _converter.MeterPerSecond, settings?.WindSpeedUnits)?.ToString("N0"); race.WindSpeedUnits = settings?.WindSpeedUnits; } }
public void Run(string filePath) { var allLines = File.ReadAllLines(filePath); List <List <string> > lineBlocks = GetLineBlocks(allLines); Parallel.ForEach(lineBlocks, (lines) => { if (_validationService.IsValid(lines)) { var result = _conversionService.Convert(ToConversionRequest(lines), ToExchangesRates(lines)); if (result.IsSuccess) { Console.WriteLine(result.Amount); } else { Console.WriteLine(result.ErrorMessage); } } else { Console.WriteLine(ErrorMessage.InconsistentInputData); Console.WriteLine($"the file {filePath} contains inconsistent datas."); } }); }
public override object Convert(object source, Type sourceType, Type targetType) { if (source == null) { return(null); } var targetElementType = ConversionUtils.GetElementType(targetType); if (targetElementType == null) { throw new InvalidOperationException("No target element type"); } var enumerable = source as IEnumerable; var len = ConversionUtils.Count(enumerable); var array = Array.CreateInstance(targetElementType, len); var i = 0; foreach (var sourceElement in enumerable) { var targetElement = _conversionService.Convert(sourceElement, sourceElement.GetType(), targetElementType); array.SetValue(targetElement, i++); } return(array); }
public object FromMessage(IMessage message, Type targetClass) { if (_conversionService.CanConvert(message.Payload.GetType(), targetClass)) { return(_conversionService.Convert(message.Payload, message.Payload.GetType(), targetClass)); } else { return(null); } }
public static string ToString(IEnumerable collection, Type targetType, IConversionService conversionService) { var sj = new StringBuilder(); foreach (var sourceElement in collection) { var targetElement = conversionService.Convert(sourceElement, sourceElement.GetType(), targetType); sj.Append(targetElement.ToString()); sj.Append(DELIMITER); } return(sj.ToString(0, sj.Length - 1)); }
protected void SetProperty(object to, PropertyInfo toInfo, object from, PropertyInfo fromInfo) { object value = fromInfo?.GetValue(from) ?? from; value = conversionService.Convert(value, toInfo.PropertyType); if (value == null) { return; } toInfo.SetValue(to, value); }
public async Task <IActionResult> Convert([FromForm] FileConversionRequestForm fileConversionRequest) { _logger.LogInformation($"Converting {fileConversionRequest.Document.FileName} to {fileConversionRequest.FileFormat}"); await using var ms = new MemoryStream(); await fileConversionRequest.Document.CopyToAsync(ms); var result = await _conversionService.Convert(new FileConversionRequest { FileName = fileConversionRequest.Document.FileName, FileContents = ms.ToArray(), ConversionExtension = fileConversionRequest.FileFormat }); await ms.ReadAsync(result.FileContents); return(File(result.FileContents, "application/octet-stream", result.FileName)); }
public override object FromMessage(IMessage message, Type targetClass) { var payload = message.Payload; if (_conversionService.CanConvert(payload.GetType(), targetClass)) { try { return(_conversionService.Convert(payload, payload.GetType(), targetClass)); } catch (ConversionException ex) { throw new MessageConversionException(message, "Failed to convert message payload '" + payload + "' to '" + targetClass.Name + "'", ex); } } return(targetClass.IsInstanceOfType(payload) ? payload : null); }
public async Task <IActionResult> Process(int fromId, int toId, decimal amount) { decimal result; try { var from = await _currencyService.GetAsync(fromId); var to = await _currencyService.GetAsync(toId); result = await _conversionService.Convert(from, to, amount); } catch (Exception ex) { _logger.LogError($"Something went wrong: {ex}"); return(StatusCode(500, "Internal server error")); } return(Json(result)); }
private void ConvertFile() { var newData = ConversionService.Convert(tbxOriginalPlayList.Text); tbxNewPlayList.Text = newData; }