public async void ImportFromWebService() { var apiurl = Properties.Settings.Default.pmis_api_url; var project = Properties.Settings.Default.pmis_project_code; var authkey = Properties.Settings.Default.pmis_auth_key; string url = String.Format("{0}/api/register/docs.action", apiurl); try { using (var client = new HttpClient()) { var values = new Dictionary <string, string> { { "forward", "json" }, { "srch_show_hist", "1" }, { "pjt_cd", project }, { "access_token", authkey }, { "pageScale", "200" }, { "pageNo", "1" }, { "login_locale", "ko_KR" } }; var page = 1; var total = 999; while (page <= total) { values["pageNo"] = "" + page; var content = new FormUrlEncodedContent(values); var response = await client.PostAsync(url, content); response.EnsureSuccessStatusCode(); var responseString = await response.Content.ReadAsStringAsync(); PmisJsonResponse <RegisterDocument> dt = JsonConvert.DeserializeObject <PmisJsonResponse <RegisterDocument> >(responseString); ImportData(dt.List); page = dt.PageInfo.CurrentPage + 1; total = dt.PageInfo.TotalPages; LogUtil.Log(dt.ToString()); } } } catch (Exception ex) { ex.Log().Display(); ImportError?.Invoke(this, new ErrorEventArgs(ex)); } finally { ImportComplete?.Invoke(this, EventArgs.Empty); } }
public async void ImportFromWebService() { var apiurl = Properties.Settings.Default.pmis_api_url; var project = Properties.Settings.Default.pmis_project_code; var authkey = Properties.Settings.Default.pmis_auth_key; string url = String.Format("{0}/api/register/reviews.action", apiurl); try { using (var client = new HttpClient()) { var values = new Dictionary <string, string> { { "pjt_cd", project }, { "access_token", authkey }, { "pageScale", "200" }, { "pageNo", "1" } }; var page = 1; var total = 999; while (page <= total) { values["pageNo"] = "" + page; var content = new FormUrlEncodedContent(values); var response = await client.PostAsync(url, content); response.EnsureSuccessStatusCode(); var responseString = await response.Content.ReadAsStringAsync(); PmisJsonResponse <ReviewInfo> dt = JsonConvert.DeserializeObject <PmisJsonResponse <ReviewInfo> >(responseString); ImportData(dt.List); page = dt.PageInfo.CurrentPage + 1; total = dt.PageInfo.TotalPages; LogUtil.Log(dt.ToString()); } } } catch (Exception ex) { ex.Log().Display(); OnImportError(new ErrorEventArgs(ex)); } finally { OnImportComplete(EventArgs.Empty); } //try //{ // HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); // WebResponse response = request.GetResponse(); // using (Stream responseStream = response.GetResponseStream()) // { // StreamReader reader = new StreamReader(responseStream, Encoding.UTF8); // var result = reader.ReadToEnd(); // PmisJsonResponse<RegisterDocument> dt = JsonConvert.DeserializeObject<PmisJsonResponse<RegisterDocument>>(result); // ImportData(dt.List); // if (ImportCompleteHandler != null) // { // ImportCompleteHandler(this, dt.List); // } // } //} //catch (NotSupportedException ex) //{ // if (ImportErrorHandler != null) // { // ImportErrorHandler(this, new ErrorEventArgs(ex)); // } //} //catch (WebException ex) //{ // WebResponse errorResponse = ex.Response; // using (Stream responseStream = errorResponse.GetResponseStream()) // { // StreamReader reader = new StreamReader(responseStream, Encoding.GetEncoding("utf-8")); // String errorText = reader.ReadToEnd(); // // log errorText // } // if (ImportErrorHandler != null) // { // ImportErrorHandler(this, new ErrorEventArgs(ex)); // } // //throw; //} }