WCF服务配置问题

  上一篇中,我们主要是使用了代码来实现服务的自我寄宿。代码的实现稍微复杂些,不过还有些使用配置文件和配置工具的方法。下面来一一介绍下。
    1、配置文件。首先在Host下添加个app.config文件。
 1 <?xml version="1.0" encoding="utf-8"?>
 2 <configuration>
 3   <system.serviceModel>
 4     <behaviors>
 5       <endpointBehaviors>
 6         <behavior name="behavior" />
 7       </endpointBehaviors>
 8       <serviceBehaviors>
 9         <behavior name="behavior">
10           <serviceMetadata httpGetEnabled="true" httpGetUrl="http://localhost:8080/CalculatorService/metadata" />
11         </behavior>
12       </serviceBehaviors>
13     </behaviors>
14     <services>
15       <service behaviorConfiguration="behavior" name="Serices.CalculatorService">
16         <endpoint address="http://localhost:8080/CalculatorService/metadata"
17             binding="wsHttpBinding" contract="Contract.IContracts" name="CalculatorServices"/>
18       </service>
19     </services>
20   </system.serviceModel>
21 </configuration>
View Code

     添加完之后,在program.cs中,就可以简化代码如下了:

 static void Main(string[] args)
        {
            using (ServiceHost host=new ServiceHost (typeof(CalculatorService)))
            {               
                host.Opened += delegate
                {
                    Console.WriteLine("CalculaorService已经启动,按任意键终止服务!");
                };
                host.Open();
                Console.Read();
            }
        }
View Code

  2、配置工具。打开工具中的wcf服务配置编辑器。如下:

首先新建服务,将浏览地址定位到你服务类库文件下bin目录

打开之后继续下一步,到选择通信模式,选择http——单工通信——输入终结点地址:http://localhost:8080/CalculatorService/metadata——完成。

接下来添加服务行为和终结点,如下图。新建终结点和服务行为名都为“Behavior”

 对服务行为中添加名为serviceMetadata的元素,设置其属性。

 

双击serviceMetadata,设置属性

设置好之后,只剩最后一步就是讲给我们创建的服务指定终结点行为。

最后保存一下,就ok了。

原文地址:https://www.cnblogs.com/marryZheng/p/4684675.html