public async Task <Response> doModelHttpRequest(ICommandObject cmdObject, ECmdObjType cmdType) { ServerResponse response = await this.bridge.makeHttPostRequest(cmdObject, cmdType); Collection <DataItemUpdate> updates = new Collection <DataItemUpdate>(); foreach (ModelUpdate modelUpdate in response.modelUpdates) { updates.Add(this.makeDataItemUpdate(modelUpdate)); } this.updateItems(updates); //Accept and implement any changes to the model received return(response.errorResponse); }
//---------------------------Fetch Methods---------------------------- public async Task <ServerResponse> fetchDataBaseObject(FetchObject fetchObj, ECmdObjType cmdType) { return(await this.bridge.makeHttPostRequest(fetchObj, cmdType)); }
public async Task <ServerResponse> makeHttPostRequest(ICommandObject commandObject, ECmdObjType cmdObjType) { string responseContent; HttpClient client = new HttpClient(); try { string jsonString = JsonConvert.SerializeObject(commandObject); string cmdObjTypePair = "cmdObjType=" + cmdObjType; HttpRequestMessage requestMessage = constructRequest( "http://127.0.0.1:32767/ajax.ashx", "POST", jsonString, cmdObjTypePair ); Task <HttpResponseMessage> getResponseStringTask = client.SendAsync(requestMessage); //Task<HttpResponseMessage> getResponseStringTask = client.PostAsync("http://127.0.0.1:32767/ajax.ashx", content); HttpResponseMessage urlContents = await getResponseStringTask; //string herd = urlContents.Headers["Test"]; responseContent = await urlContents.Content.ReadAsStringAsync(); } catch (Exception e) { ServerResponse errorResponse = new ServerResponse(); Response error = new Response(ResponseState.error, e.Message); errorResponse.errorResponse = error; return(errorResponse); } ServerResponse response = JsonConvert.DeserializeObject <ServerResponse>(responseContent); return(response); }