您目前正在嘗試下載它嗎?
一個非常簡單的方法是使用HttpWebRequest和HttpWebResponse類;
public XmlDocument GetStudentXml(int studentId)
{
XmlDocument targetXml = new XmlDocument();
HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(String.Format("http://www.contoso.com/student?id={0}", studentId));
webRequest.Credentials = System.Net.CredentialCache.DefaultCredentials;
webRequest.Accept = "text/xml";
HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse();
using (Stream responseStream = webResponse.GetResponseStream())
{
XmlTextReader reader = new XmlTextReader(responseStream);
targetXml.Load(reader);
reader.Close();
}
webResponse.Close();
return targetXml;
}
這個方法簡單地創建一個HttpWebRequest的,與URL進行初始化(通過的String.Format以追加學生證),某些Windows憑據和預期的內容類型。
然後它通過GetResponse方法調用遠程地址。然後將響應加載到流中,然後使用XmlTextReader將響應流中的Xml數據加載到XmlDocument中,然後將XmlDocument返回給調用者。
您還可以使用WebClient和XDocument來實現同樣的事情:
string url = String.Format("http://www.contoso.com/student?id={0}", studentId);
string remoteXml;
using (var webClient = new WebClient())
{
remoteXml = webClient.DownloadString(url);
}
XDocument doc = XDocument.Parse(remoteXml);
這不是一個Web服務本身。你需要發佈你的代碼來調用它,這樣人們才能確定問題所在 - 沒有代碼只是介意閱讀和猜測。 – slugster 2012-03-25 10:29:50
你可以在你打電話給WS的地方發佈你的代碼嗎? – 2012-03-25 10:31:01