private FavouriteData GetStcokData(string iNumber) { FavouriteData aTmpData = new FavouriteData(); using (WebClient aWC = new WebClient()) { string aUrl = "http://www.mobiledaddy.net/StockWeb/Model/GetStockData.aspx?Number=" + iNumber; string aJsonStr = aWC.DownloadString(aUrl); if (aJsonStr == "") { return(null); } //0.代碼 1.時間(不需要) 2.成交價 3.買進價 4.賣出價 5.漲跌 6.張數 7.昨收 8.開盤 9.最高 10.最低 StockData aJsonData = JsonConvert.DeserializeObject <StockData>(aJsonStr); aTmpData.NowPrice = aJsonData.StockValue[2]; aTmpData.RangePrice = aJsonData.StockValue[5]; aTmpData.StockName = aJsonData.StockValue[0]; aTmpData.YesterdayPrice = aJsonData.StockValue[7]; aWC.Dispose(); } return(aTmpData); }
protected void Page_Load(object sender, EventArgs e) { HttpCookie aCookieAC = Request.Cookies["Account"]; string aAccount = aCookieAC.Value; if (aAccount == null) { return; } List <FavouriteData> aData = new List <FavouriteData>(); string[] aAllFavourite = GetFavourite(aAccount); if (aAllFavourite.Length <= 0) { return; } SqlConnection aCon = new SqlConnection("Data Source = 184.168.47.10; Integrated Security = False; User ID = MobileDaddy; PASSWORD = Aa54380438!; Connect Timeout = 15; Encrypt = False; Packet Size = 4096 ;"); aCon.Open(); string aSQLStr = ""; for (int i = 0; i < aAllFavourite.Length; i++) { aSQLStr = string.Format("SELECT * FROM StockList WHERE StockNumber='{0}'", aAllFavourite[i]); using (SqlCommand aCmd = new SqlCommand(aSQLStr, aCon)) { SqlDataReader aRd = aCmd.ExecuteReader(); bool aFind = false; FavouriteData aTmpData = new FavouriteData(); while (aRd.Read()) { aTmpData.NowPrice = aRd["DealPrice"].ToString().Replace(" ", ""); aTmpData.RangePrice = aRd["PriceRange"].ToString().Replace(" ", ""); aTmpData.StockName = aRd["StockName"].ToString().Replace(" ", ""); aTmpData.YesterdayPrice = aRd["Yesterday"].ToString().Replace(" ", ""); aFind = true; } aRd.Close(); //代表SQL表單內還沒有這單號 if (aFind == false) { aTmpData = GetStcokData(aAllFavourite[i]); } aData.Add(aTmpData); } } //for (int i = 0; i < aAllFavourite.Length; i++) //{ // if (aAllFavourite[i] == "") // continue; // using (WebClient aWC = new WebClient()) // { // string aUrl = "http://www.mobiledaddy.net/StockWeb/Model/GetStockData.aspx?Number=" + aAllFavourite[i]; // string aJsonStr = aWC.DownloadString(aUrl); // if (aJsonStr == "") // break; // //0.代碼 1.時間(不需要) 2.成交價 3.買進價 4.賣出價 5.漲跌 6.張數 7.昨收 8.開盤 9.最高 10.最低 // StockData aJsonData = JsonConvert.DeserializeObject<StockData>(aJsonStr); // FavouriteData aTmpData = new FavouriteData(); // aTmpData.NowPrice = aJsonData.StockValue[2]; // aTmpData.RangePrice = aJsonData.StockValue[5]; // aTmpData.StockName = aJsonData.StockValue[0]; // aTmpData.YesterdayPrice = aJsonData.StockValue[7]; // aData.Add(aTmpData); // aWC.Dispose(); // } //} AllFavourite aAllData = new AllFavourite(); aAllData.total = aData.Count; aAllData.rows = aData.ToArray(); string aJson = JsonConvert.SerializeObject(aAllData); aCon.Close(); Response.Write(aJson); }
private void SaveButton_Click(object sender, RoutedEventArgs e) { if (bus11checkBox.IsChecked == true) { List <string> list1 = new List <string>(); if (checkBox11_1.IsChecked == true) { list1.Add(checkBox11_1.Content.ToString()); } if (checkBox11_2.IsChecked == true) { list1.Add(checkBox11_2.Content.ToString()); } if (checkBox11_3.IsChecked == true) { list1.Add(checkBox11_3.Content.ToString()); } if (checkBox11_4.IsChecked == true) { list1.Add(checkBox11_4.Content.ToString()); } if (checkBox11_5.IsChecked == true) { list1.Add(checkBox11_5.Content.ToString()); } if (list1.Count == 0) { MessageBox.Show("You can't choose a bus without stops!"); return; } FavouriteData fav1 = new FavouriteData { Bus = Routes.First(route => route.Name == "11"), FavouriteStops = list1 }; FavRoutes.Add(fav1); } if (bus23checkBox.IsChecked == true) { List <string> list2 = new List <string>(); if (checkBox23_1.IsChecked == true) { list2.Add(checkBox23_1.Content.ToString()); } if (checkBox23_2.IsChecked == true) { list2.Add(checkBox23_2.Content.ToString()); } if (checkBox23_3.IsChecked == true) { list2.Add(checkBox23_3.Content.ToString()); } if (checkBox23_4.IsChecked == true) { list2.Add(checkBox23_4.Content.ToString()); } if (checkBox23_5.IsChecked == true) { list2.Add(checkBox23_5.Content.ToString()); } if (list2.Count == 0) { MessageBox.Show("You can't choose a bus without stops!"); return; } FavouriteData fav2 = new FavouriteData { Bus = Routes.First(route => route.Name == "23"), FavouriteStops = list2 }; FavRoutes.Add(fav2); } if (bus605checkBox.IsChecked == true) { List <string> list3 = new List <string>(); if (checkBox605_1.IsChecked == true) { list3.Add(checkBox605_1.Content.ToString()); } if (checkBox605_2.IsChecked == true) { list3.Add(checkBox605_2.Content.ToString()); } if (checkBox605_3.IsChecked == true) { list3.Add(checkBox605_3.Content.ToString()); } if (checkBox605_4.IsChecked == true) { list3.Add(checkBox605_4.Content.ToString()); } if (checkBox605_5.IsChecked == true) { list3.Add(checkBox605_5.Content.ToString()); } if (checkBox605_6.IsChecked == true) { list3.Add(checkBox605_6.Content.ToString()); } if (checkBox605_7.IsChecked == true) { list3.Add(checkBox605_7.Content.ToString()); } if (list3.Count == 0) { MessageBox.Show("You can't choose a bus without stops!"); return; } FavouriteData fav3 = new FavouriteData { Bus = Routes.First(route => route.Name == "605"), FavouriteStops = list3 }; FavRoutes.Add(fav3); } if (bus98checkBox.IsChecked == true) { List <string> list4 = new List <string>(); if (checkBox98_1.IsChecked == true) { list4.Add(checkBox98_1.Content.ToString()); } if (checkBox98_2.IsChecked == true) { list4.Add(checkBox98_2.Content.ToString()); } if (checkBox98_3.IsChecked == true) { list4.Add(checkBox98_3.Content.ToString()); } if (checkBox98_4.IsChecked == true) { list4.Add(checkBox98_4.Content.ToString()); } if (checkBox98_5.IsChecked == true) { list4.Add(checkBox98_5.Content.ToString()); } if (checkBox98_6.IsChecked == true) { list4.Add(checkBox98_6.Content.ToString()); } if (list4.Count == 0) { MessageBox.Show("You can't choose a bus without stops!"); return; } FavouriteData fav4 = new FavouriteData { Bus = Routes.First(route => route.Name == "98"), FavouriteStops = list4 }; FavRoutes.Add(fav4); var y = list4; } if (FavRoutes.Count == 0) { MessageBox.Show("Please choose your favourite routes!"); return; } NewFavs?.Invoke(FavRoutes); DialogResult = false; }