public async Task <IHttpActionResult> PostPositionsByTravelHistory(HttpRequestMessage request) { Stream streamContent = await request.Content.ReadAsStreamAsync(); streamContent.Seek(0, SeekOrigin.Begin); ApiResponse <ICollection <IGeographicalPosition> > response = new ApiResponse <ICollection <IGeographicalPosition> >(); try { RequestGetPositionModel requestModel; using (StreamReader requestReader = new StreamReader(streamContent, Encoding.GetEncoding("ISO-8859-1"))) { requestModel = JsonConvert.DeserializeObject <RequestGetPositionModel>(requestReader.ReadToEnd()); } using (LogicEngine logicEngine = new LogicEngine(DataEngineKind.Sql)) { response.Result = await logicEngine.GetPositionsByTravelHistory(requestModel.TaxyId, requestModel.TravelId); } } catch (PlatformException ex) { response.Code = -1; response.Message = ex.Message; EventManager.WriteEvent(ex); } catch (LogicException ex) { response.Code = 100; response.Message = ex.Message; EventManager.WriteEvent(ex); } catch (Exception ex) { response.Code = -200; response.Message = ex.Message; EventManager.WriteEvent(ex); } return(Json(response, new JsonSerializerSettings())); }