直播中
.NET 平臺(tái)上的應(yīng)用程序可以使用代理庫來調(diào)用Web服務(wù)上的方法,這樣使用Web服務(wù)就非常容易。生成代理庫的第一步是從SDL中生成一個(gè)Web服務(wù)的代理類。.NET SDK提供了一個(gè)叫做WebServiceUtil.exe的工具,它能夠幫助我們生成一個(gè)代理類。要生成Web服務(wù)的代理類,首先進(jìn)入命令行環(huán)境,然后轉(zhuǎn)到將要開發(fā)客戶應(yīng)用程序的那個(gè)目錄,接著輸入以下命令:
WebServiceUtil /c:proxy /pa:http://localhost/stockquote/StockQuote.asmx?SDL /n:Quotes
以上命令執(zhí)行后,會(huì)在運(yùn)行這個(gè)命令的目錄中生成一個(gè) C# 源代碼文件,叫做 DailyStock.cs (要記住Web服務(wù)類的名稱也是 DailyStock,)。現(xiàn)在來看這些自變量的含義:
l /c:proxy:告訴WebServiceUtil生成一個(gè)代理類
l /pa:http://localhost/stockquote/StockQuote.asmx?SDL:向SDL提供Web服務(wù)的路徑。如果已經(jīng)將Web服務(wù)的SDL 保存到了硬盤上,我們甚至可以提供SDL文件的本地路徑。
l /n:Quotes:告訴WebServiceUtil將代理類放在 Quotes名稱空間。這樣做的目的是為了更容易地管理和使用代理庫。
代理庫準(zhǔn)備好之后,我們使用C# 編譯器從上面步驟中剛創(chuàng)建的代理類中生成一個(gè)代理庫:
csc /target:library /r:System.dll;System.Web.Services.dll;System.Net.dll;
System.IO.dll;System.Xml.Serialization.dll DailyStock.cs
生成代理庫的時(shí)候,我們使用了 /target:library開關(guān)以表示想要輸出一個(gè)庫文件。我們還引用一些曾經(jīng)在Web服務(wù)中使用過的集合。編譯器將在運(yùn)行命令所在目錄中生成一個(gè)名為DailyStock.dll 的dll 庫。