創(chuàng)建和發(fā)布Web Service
Web服務(wù)方法中可以返回一個DataSet對象
WEB服務(wù)可以說是下一代WEB應(yīng)用程序的基礎(chǔ),無論客戶端是WINDOWS應(yīng)用、asp.net Web Form程序、甚至其他語言的客戶端,都可以與同一個WEB服務(wù)通信,其平臺和語言無關(guān)性使其有了廣闊的發(fā)展空間。
利用VS2005和IIS我們可以很容易地發(fā)布一個WEB SERVICE
環(huán)境:Windows Server 2003,.Net FrameWork 2.0,IIS6.0
工具:VS2005
1.首先VS2005中新建一個WEB服務(wù)項目。
打開“文件”->“新建”->“網(wǎng)站”,在對話框中選擇“ASP.NET Web服務(wù)”,VS2005會自動生成一個Service.cs文件,包含如下代碼:
可以在這里修改自己的命名空間,加入自己的方法,但本文只是為了說明如何創(chuàng)建和發(fā)布,所以對Service.cs不做任何更改。其中可能會需要在項目中添加dll,比如log4net.dll,除了在代碼中聲明使用:using log4net; 還有就是在項目上右鍵 - 添加引用 - 添加該dll。就會最終將其添加在項目根目錄的Bin文件夾下。
2.生成網(wǎng)站
很簡單,“生成”->“生成網(wǎng)站”或直接Shift+F6
3.發(fā)布網(wǎng)站
也是簡單,“生成”->“發(fā)布網(wǎng)站”,這里會彈出一個對話框,什么也不需要修改,記下發(fā)布的目錄。比如:C:/我的文檔/Visual Studio 2005/Projects/WebSite1/PrecompiledWeb/WebSite1,我們需要目錄下的文件。
4.配置IIS
以windows server 2003為例,首先如果服務(wù)器上沒有安裝iis,則先須安裝:
控制面板添加刪除 -> 添加/刪除組件 -> 應(yīng)用程序服務(wù)器 -> Internet信息服務(wù)
如安裝過程中需要2003安裝光盤上的數(shù)據(jù),具體對應(yīng)是,例如光盤iso文件解壓后的話:
cn_win_srv_2003_r2_enterprise_with_sp2_vl_cd1/I386
之后選擇什么是對話框上有提示的了,例如IISBACK.VB_之類
進入IIS:
管理工具 -> Internet 信息服務(wù)管理器
在IIS管理器 - 網(wǎng)站 - 默認網(wǎng)站(或自己再新建一個網(wǎng)站)下新建一個虛擬目錄,比如webservice,并將第3步發(fā)布目錄中的所有文件和目錄拷貝到這個目錄中,打開IIS,找到你的站點,在這個webservice目錄上點右鍵,選擇屬性,在彈出對話框的“虛擬目錄”選擇項卡中,應(yīng)用程序名后,點擊“創(chuàng)建”按鈕,然后確定即可。
到這時,應(yīng)該已經(jīng)完成,你可以通過訪問http://域名/webservice/Service.asmx來驗證。
至此,仍有可能不好訪問且如上創(chuàng)建的webservice虛擬目錄中若無asp.net選項卡,那就很有可能是如下問題。
注意:
當程序可能需要在Framework2.0框架上運行,而在iis中的默認.net環(huán)境是1.1。這時將發(fā)生不可識別的節(jié)點的問題。
解決辦法:
將.net環(huán)境升級為2.0,開始 -> 運行 -> cmd ->
C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/aspnet_regiis.exe -i
有時仍舊會提示需要安裝.net framework 3.5以上版本
以上安裝完畢后,還是可能有些小問題的,比如沒有權(quán)限執(zhí)行腳本啊,那就在虛擬目錄 - 執(zhí)行權(quán)限 中選擇純腳本
如果還有404, 則:
引用自:http://m.survivalescaperooms.com/mrray/archive/2010/11/24/1886300.html
看運行網(wǎng)頁直接在asmx文件上右鍵瀏覽。
新聞熱點
疑難解答