我正在更新Windows Form App,它將不同的貨幣彼此轉換(例如,英鎊轉換為歐元,反之亦然)。我曾經有一個想法是創建一個利用Web API框架的類,以便:啟動程序后下載最新匯率創建分別包含這些費率的變量將這些變量私下存儲在類中,并以每種形式引用相關變量(不幸的是,該作業需要多格式的布局-否則,我將以單一格式使用下拉菜單。)這是迄今為止我在控制臺應用程序中用于計劃和測試目的的代碼:static void Main(string[] args) { string URL = "https://openexchangerates.org/api/latest.json?app_id=4837847d2bc64fc496cf325525c5cf0d"; HttpWebRequest request = (HttpWebRequest)WebRequest.Create(URL); request.ContentType = "application/json; charset=utf-8"; request.Headers["Authorization"] = "Basic " + Convert.ToBase64String(Encoding.GetEncoding("ISO-8859-1").GetBytes("GBP")); request.PreAuthenticate = true; HttpWebResponse response = request.GetResponse() as HttpWebResponse; using (Stream responseStream = response.GetResponseStream()) { StreamReader reader = new StreamReader(responseStream, Encoding.UTF8); string streamString = reader.ReadToEnd(); string[] streamArray = Regex.Split(streamString, "\n|: |,\\s*"); foreach (string s in streamArray) { if (s.Equals("\"GBP\"")) { int element = Array.IndexOf(streamArray,s); string dTPString = streamArray[element + 1]; double dollarsToPounds = Convert.ToDouble(dTPString); } if (s.Equals("\"EUR\"")) { int element = Array.IndexOf(streamArray, s); string dTEString = streamArray[element + 1]; double dollarsToEuros = Convert.ToDouble(dTEString); } } }已經測試了數組分配,并且雙重變量“ dollarsToPounds”和“ dollarsToEuros”在“ using(Stream ...)”語句的上下文中均被證明具有正確的值-但是,由于“ using”的屬性,這些變量尚未在其上下文之外分配值(在Main()開頭聲明變量不會影響此結果)。有沒有一種我可以代替使用的方法結構來執行與“使用(Stream ...)”相同的任務,即讀取提供的URL的內容,然后該變量將允許在同一類中的其他位置引用變量?然后,這將允許我在課外引用它。如果您需要我進一步解釋代碼,請務必詢問。
- 2 回答
- 0 關注
- 258 瀏覽
添加回答
舉報
0/150
提交
取消