標籤:
WebServer(ASMX)服務程式網站的編寫簡單總結。WebServer中遇到的問題
編寫WebServer程式VS運行調試時如果出現
System.Data.OracleClient.OracleException: ORA-06413: 串連未開啟。 這個是因為用OraOle驅動來訪問Oracle資料庫時,所在程式的檔案夾,名字的最後不能為")"或者“--”這些字元。
VS2013在windows7 64位版本下安裝時,預設有個program files ( x86 ) ,就是這個“()”引起的;
修改VS2013的安裝目錄,則在From程式中建立資料來源,測試通過了;
但是建立web程式,手寫串連資料庫,運行,仍然提示“ORA-06413: 串連未開啟”;
原來在項目中運行web程式,預設是使用vs內建web伺服器(develop server),而這個內建伺服器的程式被安裝在了c:/program files(x86)/common files/ 下面,這裡也用到了"(",因此造成了錯誤。
但是目前也沒有找到在安裝時能夠修改這個內建server的安裝路徑的地方。
所以這裡只用了一個方法繞開內建server。那就是使用本機IIS來偵錯工具。在解決方案中,選中web項目點右鍵選屬性,在web標籤下可以把調試伺服器該為本機iis。這是再調試web程式,串連資料庫成功了。
把程式放在windows 2008 R2 64bit的伺服器上,處理Excel時出現上面的錯誤。
解決方案,是到伺服器的開啟IIS管理器。go to Application Pool,找到對應網站的池。右擊Advanced setting... 參考,把Enable 32-Bit Application 設為由False 為True。
其他程式調用發布後的WebServer函數程式:
在已經知道其URL地址的情況下,
在Windows開始菜單中找到 Visual Studio Command Prompt。然後再裡面輸入指令:
wsdl http:// 你的 WSDL 地址,就可以在 c:\... 目錄下產生一個 .cs 檔案。把這個檔案複製到你的項目中即可。
同時你還可以修改 cs 的代碼。把URL 參數開放出來。可以通過讀取配置。
如果出現
你可以在 URL 後加上 ?wsdl 試試。確認 這個 URL 能在瀏覽器開啟。
WSDL可以要求內部人員另存新檔把XML發給你。你在本地用 wsdl D:\xxxx.wsdl 這樣也可以產生cs檔案。
還有個辦法更麻煩些。調用 WebRequest,發送 POST 請求給這個URL。你查看本地wsdl時候,在描述內容上有寫到這個。
C# 如何調用WebServer函數