創建和發布Web Service
Web服務方法中可以返回一個DataSet對象
WEB服務可以說是下一代WEB應用程序的基礎,無論客戶端是WINDOWS應用、ASP.NET Web Form程序、甚至其他語言的客戶端,都可以與同一個WEB服務通信,其平台和語言無關性使其有了廣闊的發展空間。
利用VS2005和IIS我們可以很容易地發布一個WEB SERVICE
環境:Windows Server 2003,.Net FrameWork 2.0,IIS6.0
工具:VS2005
1.首先VS2005中新建一個WEB服務項目。
打開“文件”->“新建”->“網站”,在對話框中選擇“ASP.NET Web服務”,VS2005會自動生成一個Service.cs文件,包含如下代碼:
- using System;
- using System.Web;
- using System.Web.Services;
- using System.Web.Services.Protocols;
- [WebService(Namespace = "http://tempuri.org/")]
- [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
- public class Service : System.Web.Services.WebService {
- public Service () {
- //如果使用設計的組件,請取消注釋以下行
- //InitializeComponent();
- }
- [WebMethod]
- public string HelloWorld() {
- return "Hello World";
- }
- }
可以在這里修改自己的命名空間,加入自己的方法,但本文只是為了說明如何創建和發布,所以對Service.cs不做任何更改。其中可能會需要在項目中添加dll,比如log4net.dll,除了在代碼中聲明使用:using log4net; 還有就是在項目上右鍵 - 添加引用 - 添加該dll。就會最終將其添加在項目根目錄的Bin文件夾下。
2.生成網站
很簡單,“生成”->“生成網站”或直接Shift+F6
3.發布網站
也是簡單,“生成”->“發布網站”,這里會彈出一個對話框,什么也不需要修改,記下發布的目錄。比如:C:\我的文檔\Visual Studio 2005\Projects\WebSite1\PrecompiledWeb\WebSite1,我們需要目錄下的文件。
4.配置IIS
以windows server 2003為例,首先如果服務器上沒有安裝iis,則先須安裝:
控制面板添加刪除 -> 添加/刪除組件 -> 應用程序服務器 -> Internet信息服務
如安裝過程中需要2003安裝光盤上的數據,具體對應是,例如光盤iso文件解壓后的話:
cn_win_srv_2003_r2_enterprise_with_sp2_vl_cd1\I386
之后選擇什么是對話框上有提示的了,例如IISBACK.VB_之類
進入IIS:
管理工具 -> Internet 信息服務管理器
在IIS管理器 - 網站 - 默認網站(或自己再新建一個網站)下新建一個虛擬目錄,比如webservice,並將第3步發布目錄中的所有文件和目錄拷貝到這個目錄中,打開IIS,找到你的站點,在這個webservice目錄上點右鍵,選擇屬性,在彈出對話框的“虛擬目錄”選擇項卡中,應用程序名后,點擊“創建”按鈕,然后確定即可。
到這時,應該已經完成,你可以通過訪問http://域名/webservice/Service.asmx來驗證。
至此,仍有可能不好訪問且如上創建的webservice虛擬目錄中若無asp.net選項卡,那就很有可能是如下問題。
注意:
當程序可能需要在Framework2.0框架上運行,而在iis中的默認.net環境是1.1。這時將發生不可識別的節點的問題。
解決辦法:
將.net環境升級為2.0,開始 -> 運行 -> cmd ->
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i
有時仍舊會提示需要安裝.net framework 3.5以上版本
以上安裝完畢后,還是可能有些小問題的,比如沒有權限執行腳本啊,那就在虛擬目錄 - 執行權限 中選擇純腳本
如果還有404, 則:
- iis訪問aspx文件顯示404無法找到文件?
- 解決辦法:
- Microsoft Windows [版本 5.2.3790]
- (C) 版權所有 1985-2003 Microsoft Corp.
- C:\Documents and Settings\Administrator>cd c:\windows\microsoft.net
- C:\WINDOWS\Microsoft.NET>cd fra*
- C:\WINDOWS\Microsoft.NET\Framework>cd v2*
- C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727>aspnet_regiis -i -enable
- 開始安裝 ASP.NET (2.0.50727)。
- .........................................................
- ASP.NET (2.0.50727)安裝完畢。
- C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727>
引用自:http://www.cnblogs.com/mrray/archive/2010/11/24/1886300.html
看運行網頁直接在asmx文件上右鍵瀏覽。

