public void _003CAsyncPOST_003Eb__0(HttpWebResponse response) { LawData obj = null; try { string text = ""; using (Stream stream = response.GetResponseStream()) { using (StreamReader streamReader = new StreamReader(stream, Encoding.UTF8)) { text = streamReader.ReadToEnd(); } } if (!text.Equals("")) { obj = XmlHelper.XmlDeserialize <LawData>(text, Encoding.UTF8); } } catch (Exception ex) { if (ErrorAction != null) { ErrorAction(); } LogTool.Debug(ex); } DoAction(obj); }
private void InitUI() { Action <LawData> action = null; MouseTool.ShowLoading(); LawCT_Title.Text = Settings.Default.LawButtonName; new HttpRequest(); if (NetworkTool.CheckNetwork() > 0) { if (action == null) { action = new Action <LawData>(_003CInitUI_003Eb__1b); } GetLawData.AsyncPOST(action); return; } DataTable dataTable = MSCE.GetDataTable("select LawJson from LawData"); if (dataTable.Rows.Count > 0) { LawData ld = JsonConvert.DeserializeObject <LawData>(dataTable.Rows[0]["LawJson"].ToString()); GetLawData_DoAction(ld); } else { AutoClosingMessageBox.Show("無法取得資料,請稍後再試"); MouseTool.ShowArrow(); } }
private void GetLawData_DoAction(LawData ld) { //先判斷是否要invoke if (this.Dispatcher.CheckAccess() == false) { // 這裡是下載事件處理,優先權設定為ContextIdle => 列舉值為 3。 幕後作業完成後,會處理作業。 this.Dispatcher.BeginInvoke(new Action <LawData>(GetLawData_DoAction), ld); } else { if (ld != null) { Task.Factory.StartNew(() => { this.Dispatcher.BeginInvoke(new Action(() => { int i = 0; foreach (LawDataLaw item in ld.LawList) { i++; bool IsLastRow = (i == ld.LawList.Length); LawRowSP.Children.Add(new LawRow(UserID, UserName, UserPWD , IsLastRow, item , LawListCT_HangTheDownloadEvent_Callback , LawListCT_IsAllLawRowFinished_AddInitUIFinished_Callback , LawListCT_GetBookVMs_ByMeetingFileCate_Callback)); } })); }); DataTable dt = MSCE.GetDataTable("select LawJson from LawData"); if (dt.Rows.Count > 0) { MSCE.ExecuteNonQuery(@"UPDATE [LawData] SET [LawJson] = @1" , JsonConvert.SerializeObject(ld)); } else { MSCE.ExecuteNonQuery(@"INSERT INTO [LawData] ([LawJson]) VALUES (@1)" , JsonConvert.SerializeObject(ld)); } } else { AutoClosingMessageBox.Show("無法取得資料,請稍後再試"); } MouseTool.ShowArrow(); } }
private void InitUI() { MouseTool.ShowLoading(); //LawCT_Title.Text = MyPL.Properties.Settings.Default.LawButtonName; txtTitle.Text = ButtonName; //Network.HttpRequest hr = new Network.HttpRequest(); if (1 == 1 || NetworkTool.CheckNetwork() > 0) { // 非同步POST方法 //GetLawData.AsyncPOST((ld) => { GetLawData_DoAction(ld); }); GetUserFolder.AsyncPOST(UserID, UserPWD, (fd) => { GetUserFolder_DoAction(fd); }); //, () => { this.Dispatcher.BeginInvoke(new Action(() => { AutoClosingMessageBox.Show("無法取得資料,請稍後再試"); })); }); } else { DataTable dt = MSCE.GetDataTable("select LawJson from LawData"); if (dt.Rows.Count > 0) { LawData ld = JsonConvert.DeserializeObject <LawData>(dt.Rows[0]["LawJson"].ToString()); GetLawData_DoAction(ld); } else { AutoClosingMessageBox.Show("無法取得資料,請稍後再試"); MouseTool.ShowArrow(); } } #region 步POST //LawData lawData = GetLawData.POST(); //if (lawData != null) //{ // int i=0; // foreach (LawDataLaw item in lawData.LawList) // { // i++; // bool IsLastRow= (i==lawData.LawList.Length); // LawRowSP.Children.Add(new LawRow(item,IsLastRow, LawListCT_HangTheDownloadEvent_Callback)); // } //} //else //{ // AutoClosingMessageBox.Show("無法取得資料,請稍後再試"); //} #endregion }
public static LawData POST() { LawData result = null; try { string url = WsTool.GetUrl(); string text = HttpTool.CreateRequest(url + "/LawData", "POST"); if (text.Equals("")) { return(result); } result = XmlHelper.XmlDeserialize <LawData>(text, Encoding.UTF8); return(result); } catch (Exception ex) { LogTool.Debug(ex); return(result); } }
private void GetLawData_DoAction(LawData ld) { Action action = null; _003C_003Ec__DisplayClass20 _003C_003Ec__DisplayClass = new _003C_003Ec__DisplayClass20(); _003C_003Ec__DisplayClass.ld = ld; _003C_003Ec__DisplayClass._003C_003E4__this = this; if (!base.Dispatcher.CheckAccess()) { base.Dispatcher.BeginInvoke(new Action <LawData>(GetLawData_DoAction), _003C_003Ec__DisplayClass.ld); return; } if (_003C_003Ec__DisplayClass.ld != null) { TaskFactory factory = Task.Factory; if (action == null) { action = new Action(_003C_003Ec__DisplayClass._003CGetLawData_DoAction_003Eb__1d); } factory.StartNew(action); DataTable dataTable = MSCE.GetDataTable("select LawJson from LawData"); if (dataTable.Rows.Count > 0) { MSCE.ExecuteNonQuery("UPDATE [LawData] SET [LawJson] = @1", JsonConvert.SerializeObject(_003C_003Ec__DisplayClass.ld)); } else { MSCE.ExecuteNonQuery("INSERT INTO [LawData] ([LawJson])\r\n VALUES (@1)", JsonConvert.SerializeObject(_003C_003Ec__DisplayClass.ld)); } } else { AutoClosingMessageBox.Show("無法取得資料,請稍後再試"); } MouseTool.ShowArrow(); }
private void _003CInitUI_003Eb__1b(LawData ld) { GetLawData_DoAction(ld); }