从互联网上获取汇率

her*_*ron 5 c# windows visual-studio-2010 visual-studio winforms

我想做的是,从互联网上获取汇率.经过长时间的研究,我发现了这个功

protected void Button1_Click(object sender, EventArgs e)
    {
        try
        {
        string xmlResult = null;
        string url;
        url = "http://www.webservicex.net/CurrencyConvertor.asmx/ConversionRate?FromCurrency=" + TextBox1.Text + "&ToCurrency=" + TextBox2.Text + "";
        HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
        HttpWebResponse response = (HttpWebResponse)request.GetResponse();
        StreamReader resStream = new StreamReader(response.GetResponseStream());
        XmlDocument doc = new XmlDocument();
        xmlResult = resStream.ReadToEnd();
        doc.LoadXml(xmlResult);
        Label1.Text = "Current Exchange Rate for " + TextBox1.Text.ToUpper() + " ---> " + TextBox2.Text.ToUpper() + " value " + doc.GetElementsByTagName("double").Item(0).InnerText;
        }
        catch(Exception ex)
        {
            Label1.Text="Not a valid Currency or Try again later";
        }
    } 
Run Code Online (Sandbox Code Playgroud)

http://www.webservicex.net/不支持AZN(阿塞拜疆马纳特)对usd,反之亦然转换.我想做的是,如果它可以连接到互联网并获得费率.否则使用书面函数进行转换(我已经写过了).

您有什么建议,如何获得美元和AZN的当前汇率(或通过发送美元或AZN获得结果)?无论如何从Windows窗体应用程序中获取它?

小智 0

http://www.webservicex.net/不支持AZN(阿塞拜疆马纳特)至usd,反之亦然

所以?计算通过另一种货币的交叉汇率。

AZN 可能是一种交易量或风险敞口非常有限的边缘货币。询问 OANDA (http://www.oanda.com),我得到一些报价,包括美元兑换 (http://www.oanda.com/currency/cross-rate/result?quotes=GBP"es=EUR"es=JPY"es= CHF"es=USD"es=AZN&go=Get+my+Table+%3E)

可能 webservicesx.net 只是没有主要货币以外的价格。

使用另一个引用。FXCM 和 Oanda 可能有您可以订阅的 API - 可能需要付费。

或者,您可以看看是否可以计算交叉货币 - 从 AZN 到另一种货币(如果有价格),然后从那里到美元。不过,这在外汇中经常进行 - 令人愉快的 - 美元大多不需要交叉汇率计算。

有没有办法从 Windows 窗体应用程序内部获取它?

当你在互联网上询问一个API时,无论它是winforms、webforms、powershell还是vb脚本,都完全无关紧要,API支持与否,你使用的UI技术也无关紧要。