如何創建和發布.asmx Web Service


創建和發布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文件,包含如下代碼:

 

C#代碼   收藏代碼
  1. using System;  
  2. using System.Web;  
  3. using System.Web.Services;  
  4. using System.Web.Services.Protocols;  
  5.   
  6. [WebService(Namespace = "http://tempuri.org/")]  
  7. [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]  
  8. public class Service : System.Web.Services.WebService {  
  9.     public Service () {  
  10.         //如果使用設計的組件,請取消注釋以下行  
  11.         //InitializeComponent();  
  12.     }  
  13.   
  14.     [WebMethod]  
  15.     public string HelloWorld() {  
  16.         return "Hello World";  
  17.     }  
  18. }  

 


可以在這里修改自己的命名空間,加入自己的方法,但本文只是為了說明如何創建和發布,所以對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, 則:

 

Js代碼   收藏代碼
  1. iis訪問aspx文件顯示404無法找到文件?  
  2.   
  3. 解決辦法:  
  4.   
  5. Microsoft Windows [版本 5.2.3790]  
  6. (C) 版權所有 1985-2003 Microsoft Corp.  
  7.   
  8. C:\Documents and Settings\Administrator>cd c:\windows\microsoft.net  
  9.   
  10. C:\WINDOWS\Microsoft.NET>cd fra*  
  11.   
  12. C:\WINDOWS\Microsoft.NET\Framework>cd v2*  
  13.   
  14. C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727>aspnet_regiis -i -enable  
  15. 開始安裝 ASP.NET (2.0.50727)。  
  16. .........................................................  
  17. ASP.NET (2.0.50727)安裝完畢。  
  18.   
  19. C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727>  
 

引用自:http://www.cnblogs.com/mrray/archive/2010/11/24/1886300.html

 

看運行網頁直接在asmx文件上右鍵瀏覽。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM