C# WebService發布與調用淺析
Web Service是可操作的分布式應用程序。它以SOAP作為基本通信協議,使用HTTP和XML進行可以穿越防火墻的自由通信。
錯誤提示:
* 出現 訪問 IIS 元數據庫失敗
* iis 無法顯示XML
解決:開始->程序->Microsoft Visual Studio 2005->Visual StudioTools中打開命令行,輸入命令: aspnet_regiis -i 這樣就會重新注冊.net
另還需在虛擬目錄上打開屬性對話框,點擊ASP.NET屬性頁在“Asp.net version”項選擇相應的Asp.net版本(1.1或者2.0)
* 無權限問題
因為我們現在用的都是NTFS格式的硬盤,把Everyone用戶選擇上或者在IIS中把允許匿名訪問勾上
* 把Window系統集成用戶去掉勾選
1.首先添加新項---Web服務---*.asmx
同時在App_Code文件夾下增加了一個*.cs文件
- WebMethod]
- public string[] GetHotSearchByKeywords
- (string keyword)
- {
- return SearchKeywordManager.GetHotSearchByKeywords
- (keyword);
- }
- [WebMethod]是Web Service為我們提供的特性,
- 它表示下面的方法是 Web 方法,允許Web使用SOAP調用該方法
- 一個Web Service文件中可以有多個[WebMethod],
- 一個[WebMethod]只能對它下面的方法有效
寫完以后,可以直接打開這個文件進行測試,成功后,即可發布
2.C# webService發布
C# webService發布網站---創建虛擬目錄---瀏覽WebService頁面---測試WebService方法
在發布的時候有可能會出現一點小問題,上面是出錯的狀況
打開WebService的那個網址,就是要發布的WebService的URL
3.C# WebService調用
添加Web引用---實例化WebService類---執行WebService方法
WebService可能在本項目、非本項目、甚至在異地被調用
*添加WebService引用
*在URL處填寫發布的WebService網址,單擊前往,就會看到我們發布的WebService方法
*可以改一下WebService的引用名
C# WebService調用這個方法
引用名.類名s=new引用名.類名();
*添加完引用后,同時會看到App_WebReferences文件夾下已經添加了WebService的相關文件
*.disco
*.discomap
*.wsdl
【編輯推薦】