DotNET發(fā)布WebService流程及常見問題_第1頁
DotNET發(fā)布WebService流程及常見問題_第2頁
DotNET發(fā)布WebService流程及常見問題_第3頁
DotNET發(fā)布WebService流程及常見問題_第4頁
DotNET發(fā)布WebService流程及常見問題_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、WebServices 生成發(fā)布過程及常見問題的解決方法本文主要講訴:一、VS中創(chuàng)建 Web 服務(wù)項(xiàng)目。二、WebService 生成發(fā)布三、網(wǎng)站發(fā)布四、故障及解決方法五、如何訪問WebService六、Win 7 下的 WebService發(fā)布和使用 WebService 需要首先安裝 IIS 服務(wù), IIS 的安裝過程這里就不在敘述, baidu 上到處都是。1、 VS 中創(chuàng)建 Web 服務(wù)項(xiàng)目在 VS 中“文件” -“新建” -“網(wǎng)站” -“ ASP.NET Web 服務(wù)”。創(chuàng)建過程很簡單,和其他項(xiàng)目的創(chuàng)建過程基本相同,這里就不多說了。這里我創(chuàng)建了一個名為MyWebService 的解決

2、方案,如下圖所示,系統(tǒng)會自動添加一個名為 Service 的 asmx 文件,并在 App_Code 文件夾中添加一個同名的代碼容器類。我們可以將這兩個文件刪除,然后依次在右鍵,選擇“添加新項(xiàng)”。在打開的窗口中選擇“名為 MyService 。Web服務(wù)”,添加一個新的Web上點(diǎn)擊服務(wù),命我們同樣可以將這兩個名為Service 的文件重命名為MyService。但在重命名的時候,有四個地方的名稱是必須更改的。1、 將 Service.cs 的名稱改為MyService.cs2、 將 Service.asmx 的名稱改為MyService.asmx3、 將 Service.cs 文件中的類名pu

3、blicclassService: System.Web.Services.WebService改為publicclassMyService : System.Web.Services.WebService同時修改構(gòu)造函數(shù)。4、 將 Service.asmx 文件中 Class屬性指向 MyService ,修改如下改為有點(diǎn)啰嗦了, 其實(shí)文件中如果有名稱不匹配的話, 一般在調(diào)試的時候系統(tǒng)都會給出錯誤提示。完成后的解決方案如圖所示注: Web.Config 文件是生成時系統(tǒng)自動附加的。2、 完成創(chuàng)建以后, 我們就可以調(diào)試生成解決方案。調(diào)試通過后,將 WebService 發(fā)布。具體步驟如下:右鍵

4、點(diǎn)擊項(xiàng)目,在彈出菜單中選擇“發(fā)布網(wǎng)站” 彈出發(fā)布位置選擇窗口如圖所示,這里我們選擇已經(jīng)創(chuàng)建好的目錄D:MyService ,點(diǎn)擊“確定”按鈕發(fā)布完成,這時我們可以到D:MyService 中查看發(fā)布文件。如下圖所示。3、下一步, 我們需要將 Myservice 文件夾拷貝到 C:Inetpubwwwroot 目錄下(重要) 。如下圖所示然后依次右擊“我的電腦”-“管理” -“服務(wù)和應(yīng)用程序”-“Internet 信息服務(wù) (IIS)管理器”打開 IIS 管理器,或者在控制面板中,通過“管理工具”打開“ Internet 信息服務(wù) (IIS)管理器”,如下圖所示展開“網(wǎng)站”節(jié)點(diǎn),右鍵點(diǎn)擊“默認(rèn)網(wǎng)

5、站”節(jié)點(diǎn),依次選擇“新建” -“虛擬目錄” ,打開虛擬目錄創(chuàng)建窗口。如下圖所示。點(diǎn)擊“下一步”輸入一個別名,如“ MyServiceTest”(此處不一定要和 WebService 文件名相同) 。點(diǎn)擊“下一步”進(jìn)入路徑選擇窗口,如圖所示。其中路徑名必須選擇是C:Inetpubwwwroot目錄下,新拷貝的WebService 文件副本。如上圖所示。點(diǎn)擊下一步,開始設(shè)置訪問權(quán)限。作為測試,我們可以將其全部選中。如下圖所示。點(diǎn)擊下一步, 系統(tǒng)會彈出安全警告, 點(diǎn)擊“是”按鈕,然后點(diǎn)擊“完成” 按鈕,完成 WebService 發(fā)布。4、 截止到此, WebService 已經(jīng)發(fā)布完成,下面可以開

6、始訪問了。選擇我們剛剛創(chuàng)建的虛擬目錄“ MyServiceTest”,右鍵點(diǎn)擊,選擇“瀏覽”操作,打開瀏覽窗口,如圖所示。在上圖右側(cè)的瀏覽窗口中,點(diǎn)擊MyService.asmx連接項(xiàng),打開查看WebService中的可用接口。如下圖所示:注意:此過程會出現(xiàn)如下的錯誤提示A)、配置錯誤,提示內(nèi)容如下:說明 :在處理向該請求提供服務(wù)所需的配置文件時出錯。請檢查下面的特定錯誤詳細(xì)信息并適當(dāng)?shù)匦薷呐渲梦募?。分析器錯誤信息:無法識別的配置節(jié)“ connectionStrings”源錯誤 :行 10 :行 11 :行 12 :行 13 : 行 14 :!-源文件 : C:InetpubwwwrootMy

7、Service web.config行 : 12-版本信息: Microsoft .NET Framework版本 :1.1.4322.573; ASP.NET版本 :1.1.4322.573出現(xiàn)該問題的原因如下:我們使用vs2005 創(chuàng)建WebService 需要使用 .net framework 2.0,而在Windows Server 2003中, iis默認(rèn) .net環(huán)境是1.1 。這時將發(fā)生不可識別的節(jié)點(diǎn)的問題。因?yàn)閏onnectionStrings是 .NET 2.0中的新增節(jié)點(diǎn)。解決方法如下:首先確保系統(tǒng)中已經(jīng)安裝了 .NET 2.0,然后更改 IIS 使用的 ASP.NET 版

8、本。操作過程如下:打開 windows “命令提示符” ,即在運(yùn)行中輸入“ cmd ”,然后輸入以下字符串 C:WINDOWSMicrosoft.NETFrameworkv2.0.50727aspnet_regiis -i enable ,執(zhí)行安裝操作。如果當(dāng)前系統(tǒng)未安裝 .NET 2.0 平臺,則會提示“系統(tǒng)找不到指定的路徑” ,否則,將執(zhí)行安裝操作,如下圖所示:安裝完成后,再次嘗試執(zhí)行“瀏覽”操作。B)、分析器錯誤,提示內(nèi)容如下:“ /testSer ”應(yīng)用程序中的服務(wù)器錯誤。-分析器錯誤說明 : 在分析向此請求提供服務(wù)所需資源時出錯。請檢查下列特定分析錯誤詳細(xì)信息并適當(dāng)?shù)匦薷脑次募?。分?/p>

9、器錯誤信息: 未能創(chuàng)建類型“ MyService ”。源錯誤 : 行 1 : 源文件 : C:Inetpubwwwroot MyService MyService.asmx行: 1 -出現(xiàn)該問題的原因:( 1)、在步驟一中,重命名文件時,未完成所有文件名的統(tǒng)一修改。一般情況下,確保步驟一羅列出的所有位置的位置的文件名統(tǒng)一,即可解決該問題。( 2 )、如果您可以保證沒有文件名稱錯誤??梢圆捎煤蜕弦粋€問題相同的解決方法來解決該問題。 。5、 遠(yuǎn)程訪問一般在遠(yuǎn)程機(jī)器上調(diào)用本機(jī)發(fā)布的 WebService 的地址即為本機(jī) IP+虛擬目錄,例如,本次創(chuàng)建的 WebService 的訪問地址如下:http

10、:/4 /MyServiceTest/MyService.asmx查看該地址的方法為,打開WebService 服務(wù)頁,如下圖所示點(diǎn)擊 HelloWorld 公共接口連接。跳轉(zhuǎn)至HelloWorld 定義頁。如圖所示。點(diǎn)擊“調(diào)用”按鈕,將打開瀏覽器,顯示調(diào)用結(jié)果。如圖所示:中的將瀏覽器地址欄中地址localhost 換成本機(jī)http:/localhost/MyServiceTest/MyService.asmx/HelloWorldIP(例如4 ),然后去掉最后的/HelloWorld ,即為Webervice 的訪問地址如果需要在遠(yuǎn)程中輸入以上地址

11、即可。4 /MyServiceTest/MyService.asmx 。C#項(xiàng)目中需要使用WebService,只需添加Web 引用,然后在URL詳細(xì)過程可以參考相關(guān)教材,或者求助谷、百兩位大哥, 遵從個人喜好。6、Win 7 下發(fā)布 WebServiceWin7 下 WebService 的發(fā)布相對較為簡單。從文件拷貝到創(chuàng)建虛擬目錄的過程都與2003 下完全相同,這里不再贅述。我們同樣創(chuàng)建一個名為MyServiceTest 的虛擬目錄,如下圖所示然后在右側(cè)的“MyServiceTest 主頁”區(qū)域中找到“目錄瀏覽“圖標(biāo),如下圖所示雙擊“目錄瀏覽”圖標(biāo)打開目錄

12、瀏覽功能,如下圖所示點(diǎn)擊右側(cè)的“啟用”按鈕,啟用目錄瀏覽功能,如下圖所示。然后雙擊左側(cè)的 “ MyServiceTest”虛擬目錄節(jié)點(diǎn), 回到“ MyServiceTest 主頁” 選區(qū)。右鍵點(diǎn)擊“ MyServiceTest”虛擬目錄節(jié)點(diǎn),在彈出的菜單中選擇“轉(zhuǎn)換為應(yīng)用程序”彈出應(yīng)用程序轉(zhuǎn)換窗口,如下圖所示。直接點(diǎn)擊“確定”按鈕。轉(zhuǎn)成功,我們可以看到,此時虛擬目錄圖標(biāo)已經(jīng)發(fā)生了變化,如下圖所示。此時,在“ MyServiceTest”虛擬目錄節(jié)點(diǎn)上點(diǎn)擊鼠標(biāo)右鍵,依次選擇“管理應(yīng)用程序” -“瀏覽”即可在瀏覽器中查看 MyService。補(bǔ)充 :在本機(jī)上發(fā)布的WebService,如果本機(jī)能訪問,而遠(yuǎn)程機(jī)器無法訪問,一幫是由于 Windows 防火墻處于打開狀態(tài)造成的。將其關(guān)閉即可webservice測試窗體只能用于來自本地計(jì)算機(jī)的請求如果在本地測試webservice可以運(yùn)行,在遠(yuǎn)程卻顯示“測試窗體只能用于來自本地計(jì)算機(jī)的請求 ”或者 Thetestformis onlyavailableforrequestsfromthelocalmachine. ,那是因?yàn)闆]有開啟遠(yuǎn)程訪問的原因。大家都知道, Web 服務(wù)做好后,發(fā)布在網(wǎng)上,別人要調(diào)用你提供的接口時,是無法打開測試窗體的, 這讓很多的朋友都蠻郁悶,為什

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論