/// <summary> /// Request with url and data /// </summary> /// <param name="url">Target url</param> /// <param name="data">Request data</param> /// <param name="isGet">If use httpGet method</param> private void requestWith(string url, string data = "") { if (string.IsNullOrEmpty(data)) { delegateHttpRequest = netRequestProvider.HttpGet; } else { delegateHttpRequest = netRequestProvider.HttpPost; } Action <RunHttpRequest, string, string> action = null; action = new Action <RunHttpRequest, string, string>(ctlHttpRequest); object[] _params = new object[] { delegateHttpRequest, url, data }; System.Windows.Application.Current.Dispatcher.BeginInvoke(action, _params); }
private async Task <string> basicHttpRuquest(RunHttpRequest runHttpRequest, string url, string data) { IsRequestRunning = true; string result = string.Empty; //Await run result = await runHttpRequest(url, data); developerMessage("Task Run : " + runHttpRequest.Method.Name); //Result handle and check if (string.IsNullOrEmpty(result)) { sendToConsole(netRequestProvider.errorMessages); } IsRequestRunning = false; return(result); }
private async void ctlHttpRequest(RunHttpRequest runHttpRequest, string url, string data) { do { RequestResult = await basicHttpRuquest(runHttpRequest, url, data); if (!string.IsNullOrEmpty(RequestResult)) { handRequestResult(); } if (IsAutoRepeat) { await Task.Delay(DelayTime); } else { break; } } while (IsAutoRepeat); }
/// <summary> /// Async run http request method /// </summary> /// <param name="getresult"></param> /// <param name="Url"></param> /// <param name="rule"></param> private async void asyncHttpRequest(RunHttpRequest runHttpRequest, string url, string data, bool defaultHand) { IsRequestRunning = true; do { //Await run RequestResult = await runHttpRequest(url, data); developerMessage("Task Run : " + runHttpRequest.Method.Name); //Result handle and check if (string.IsNullOrEmpty(RequestResult)) { sendToConsole(netRequestProvider.errorMessages); } else if (defaultHand) { handRequestResult(); } else { IsRequestRunning = false; } if (!IsRequestRunning) { break; } //Delay for repeat if (IsAutoRepeat) { await Task.Delay(DelayTime); } } while (IsRequestRunning && IsAutoRepeat); IsRequestRunning = false; }