上一篇是Windows服務為宿主的WCF服務,現在用IIS為宿主發布WCF服務。
第一步:肯定是新建一個WCF服務啦【是WCF服務應用程序】,然后在解決方案上再次添加一個新項目【我們選擇WCF服務庫,添加此服務庫完全是為了以后編碼的方便。】看下圖:
第二步:將WCFService中的IService1.cs和Service1.svc.cs刪除掉【我們要用WCFServiceLibrary中的類】,然后在WCFService添加引用WCFServiceLibrary。最后我們雙擊Service1.svc,修改一下他的聲明指示,讓他的代碼指向我們建立的WCF服務庫項目WCFServiceLibrary。
修改之前是:<%@ ServiceHost Language="C#" Debug="true" Service="WCFService.Service1" CodeBehind="Service1.svc.cs" %>
修改之后是:<%@ ServiceHost Language="C#" Debug="true" Service="WCFServiceLibrary.Service1" %>看下圖:
第三步:我們就要開始配置web.config,我們知道WCF實現通信的核心要素就是結點【Endpoints】,而Endpoint由三部分組成:Address,Binding,Contract我們一般簡稱為WCF的ABC。這里我們直接配置,就不手寫啦,看下圖:右擊web.config,選擇【編輯WCF配置】。
第四步:WCF配置 圖一:點擊新建服務
圖二:瀏覽,添加【此處一定要先重新生成解決方案】。
圖三:配置完成。
第五步:將發布WCF,並放在IIS上。【我們之前建了一個WCF服務庫WCFServiceLibrary中的方法GetData(),我們一會要在客戶端調用】
右擊WCFServiceLibrary--->發布。
第六步:打開IIS,添加網站並且將對應的應用程序池中的.NET Framework版本選擇為一致。發布成功,瀏覽看下圖:
第七步:開始調用吧,新建一個控制台應用程序。添加服務引用,看下圖:
第八步:完成調用,並調試。看下圖: