首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

WCF 服務引用:本機發現 vs 手動輸入 URI 的差異

     編輯:程式設計疑難解答

兩種添加方式的本質

方式運作機制適用場景
發現本解決方案服務 Visual Studio 啟動 IIS Express / WebDev Server 臨時寄宿服務,自動產生 WSDL 開發階段除錯,同方案內專案互通
手動輸入 URI 直接連接已部署的服務端點(IIS、Windows Service、Self-host 等)獲取中繼資料 生產環境、跨方案、跨機器呼叫

為何「服務端未啟動」也能發現?

「發現本解決方案」功能會自動啟動內建開發伺服器臨時寄宿 WCF 專案,因此不需手動啟動服務專案即可生成 Proxy。這僅限開發環境便利功能。

生產環境寄宿方式

  • IIS 寄宿:.svc 檔案 + web.config,啟用 WAS 非 HTTP 啟用。
  • Windows Service 寄宿:ServiceHost 在 OnStart 中開啟。
  • Self-Host (Console/WPF/WinForms):using (var host = new ServiceHost(...)) { host.Open(); }

關鍵提醒

開發時雖可用「發現方案服務」,但部署上線必須採用正式寄宿,並確保防火牆、端口、基址配置正確。客戶端生產環境應指向穩定的服務 URI,而非依賴開發工具的自動發現。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved