原創地址:http://m.survivalescaperooms.com/jfzhu/p/4025448.html
轉載請注明出處
(1)創建WCF Service類庫
創建一個Class Library的項目:

刪除掉默認的Class1.cs文件,然后添加一個WCF Service項目:

Visual Studio會自動幫助你生成兩個文件:HelloService.cs 和 IHelloService.cs,另外還自動添加了System.ServiceModel引用,它是WCF的核心。

修改IHelloService.cs和HelloService.cs文件。
IHelloService.cs:
namespace HelloService{    // NOTE: You can use the "Rename" command on the "Refactor" menu to change the interface name "IHelloService" in both code and config file together.    [ServiceContract]    public interface IHelloService    {        [OperationContract]        string GetMessage(string name);    }}HelloService.cs:
namespace HelloService{    // NOTE: You can use the "Rename" command on the "Refactor" menu to change the class name "HelloService" in both code and config file together.    public class HelloService : IHelloService    {        public string GetMessage(string name)        {            return "Hello " + name;        }    }}(2)創建WCF的Host
添加一個新的asp.net Empty Web application:

添加一個新Item WCF Service


刪除HelloService.svc.cs和IHelloService.cs文件。
添加HelloService Class Library的項目引用:

修改HelloService.svc為:
<%@ ServiceHost Language="C#" Debug="true" Service="HelloService.HelloService" %>
Web.config:
<?xml version="1.0" encoding="utf-8" ?><configuration> <system.serviceModel> <services> <service name="HelloService.HelloService" behaviorConfiguration="metaBehavior"> <endpoint address="HelloService" binding="basicHttpBinding" contract="HelloService.IHelloService"></endpoint> <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"></endpoint> <host> <baseAddresses> <add baseAddress="http://localhost:8080"/> </baseAddresses> </host> </service> </services> <behaviors> <serviceBehaviors> <behavior name="metaBehavior"> <serviceMetadata httpGetEnabled="true"/> </behavior> </serviceBehaviors> </behaviors> </system.serviceModel></configuration>
其中,service name=”命名空間.類名”,behaviorConfiguration是用來關聯下面behavior的定義的。
endpoint address中定義的是相對地址,與baseAddress結合起來為完整地址
endpoint contract=”命名空間.接口名”
兩個endpoint,第一個binding是basicHttpBinding,用于HTTP協議;第二個endpoint用于交換metadata,binding為mexHttpBinding。
其中behavior的定義是用來允許交換metadata的。
Build解決方案,如果沒有錯誤就進行到下一步,部署WCF Service到IIS
(1)Publish HelloServiceIISHost項目






(2)部署到IIS



瀏覽HelloService.svc



添加一個服務引用:

新聞熱點
疑難解答