2011-12-13 11 views
0

これは私が使用しようとしているWebサービスです。私はVisual Studio 2010を使用しています。 http://www.webservicex.net/country.asmxXMLを使用してWebサービスから国の通貨名を呼び出す

これは私のコードです。私は自分のWebサイトにWebサービスを追加しました。私の環境にはエラーが表示されません。しかし、プログラムを実行してマイボタンをクリックすると、何も起こりません。

using System; 
using System.Collections.Generic; 
using System.Web; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using System.Xml; 
using System.Xml.XPath; 
using System.Net; 
using System.Web.Services.Protocols; 

public partial class _Default : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 

    } 

    public void btnCountry_Click(object sender, EventArgs e) 
    { 
     CountryInfo.country country = new CountryInfo.country(); 
     String countryName = txtCountry.Text; 
     String currencyName = country.GetCurrencyByCountry(countryName); 

     XPathNavigator nav; 
     XmlDocument myDoc = new XmlDocument(); 

     myDoc.LoadXml(currencyName); 
     nav = myDoc.CreateNavigator(); 

     lblCurrency.Text = nav.SelectSingleNode("//Currency").Value; 
     String countryCode = nav.SelectSingleNode("//CurrencyCode").Value; 
    } 
} 

ご協力いただければ幸いです。

答えて

0

私は上記のサンプルを試しましたが、私は何の問題もなく応答を返します。パラメータとしてWebサービスに渡す国名は、Webサービスによって公開されている国のリストにある必要があります。 Webサービスによって公開されるメソッド "GetCountries"があります。国のデータがない場合は、空のデータセットとなります。

だけCOUNTRYNAME値「イギリス」を使用しようと、私は以下のような応答を見ることができます:

<?xml version="1.0" encoding="utf-8" ?> 
    <string xmlns="http://www.webserviceX.NET"> 
<NewDataSet> 
    <Table> 
     <Name>United Kingdom</Name> 
     <CountryCode>uk</CountryCode> 
     <Currency>Pound</Currency> 
     <CurrencyCode>GBP</CurrencyCode> 
    </Table> 
    <Table> 
     <Name>United Kingdom</Name> 
     <CountryCode>uk</CountryCode> 
     <Currency>Pound</Currency> 
     <CurrencyCode>GBP</CurrencyCode> 
    </Table> 
</NewDataSet>