WCF服務部署到IIS7.5


WCF服務部署到IIS7.5

2014-06-16

為WCF服務創建.svc文件
為WCF創建web.config文件
將上述文件和程序集放到相應目錄下
為WCF服務創建WebSite
參考

 

前面介紹了如何 WCF注冊Windows Service, 下面介紹如何把WCF服務部署到IIS:

為WCF服務創建.svc文件


 返回

我們知道,每一個ASP.NET Web服務都具有一個.asmx文本文件,客戶端通過訪問.asmx文件實現對相應Web服務的調用。與之類似,每個WCF服務也具有一個對應的文本文件,其文件擴展名為.svc。基於IIS的服務寄宿要求相應的WCF服務具有相應的.svc文件,.svc文件部署於IIS站點中,對WCF服務的調用體現在對.svc文件的訪問上。

.svc文件的內容很簡單,僅僅包含一個ServiceHost指令(Directive),該指令具有一個必須的Service屬性和一些可選的屬性。所以最簡單的.svc僅僅具有一個包含Service屬性(該屬性指明了相應的WCF服務的有效類型)的ServiceHost指令。CalculatorService對應的.svc如下所示,我們把該.svc放在Services項目的根目錄下,並將文件命名為CalculatorService.svc。

<%@ServiceHost Service="WcfServices.Services.CalculatorService"%>

為WCF創建web.config文件


 返回

這里的web.config文件的內容和WCF Service Configuration Editor的使用配置的app.config文件的內容相似,只是無須設置endpoint的address的值:

 1 <?xml version="1.0"?>
 2 <configuration>
 3   <system.serviceModel>    
 4     <behaviors>
 5       <serviceBehaviors>
 6         <behavior name="CalculatorBehavior">
 7           <serviceMetadata httpGetEnabled="true" />
 8         </behavior>
 9       </serviceBehaviors>
10     </behaviors>
11     <services>
12       <service behaviorConfiguration="CalculatorBehavior" name="WcfServices.Services.CalculatorService">
13         <endpoint address="" binding="basicHttpBinding"
14           bindingConfiguration="" contract="WcfServices.Contracts.ICalculator" />
15       </service>
16     </services>    
17   </system.serviceModel>
18 </configuration>
View Code

將上述文件和程序集放到相應目錄下


 返回

創建一個文件夾,將上述文件和程序集放到想應目錄下。這里,創建文件夾‘WCFService’,將文件‘CalculatorService.svc’,‘Web.config’放入。

因為一個Web應用在運行的時候會默認從位於根目錄下的Bin目錄加載程序集,所以,程序集‘WcfServices.Contracts.dll’和‘WcfServices.Services.dll’ (程序集代碼)放入子目錄‘bin'下,如下圖1:

圖1 WCFService目錄結構

為WCF服務創建WebSite


 返回 

為WCF服務創建一個application pool, 設置Name="WCF", .NET Framework version = “.NET Framework version v4.0.30319”。如下圖2:

 圖2 創建WCF Application Pool

 更改WCF Application Pool的Identity,使之有權限訪問WCFService目錄,見測試授權。如下圖3:

圖3 更改WCF Application Pool的Identity

右鍵“Sites",選擇選項”Add Web Site",為WCFSerivce創建Web Site,如下圖4:

設置Site name = "CalculatorWCFService",選擇Application pool = "WCF" (就是上面建立的application pool),設置Physical path到相應目錄,設置Port。

圖4 為WCFSerivce創建Web Site

測試授權

圖5 測試授權

瀏覽網頁“CalculatorServices.svc” ,如下圖6:

圖6 瀏覽網頁“CalculatorServices.svc” 

WCFService部署到IIS成功,如下圖7:

圖7 WCFService部署到IIS成功

 


參考:

[1] 我的WCF之旅(1):創建一個簡單的WCF程序  http://www.cnblogs.com/artech/archive/2007/02/26/656901.html
[2] WCF部署到IIS7.5注意點  http://blog.csdn.net/fairyeye/article/details/6732584
[3] IIS7 配置大全(ASP.NET 2.0, WCF, ASP.NET MVC,php) http://www.jb51.net/article/37829.htm

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM