WCF服务配置问题

时间:2022-09-01 08:52:30
  上一篇中,我们主要是使用了代码来实现服务的自我寄宿。代码的实现稍微复杂些,不过还有些使用配置文件和配置工具的方法。下面来一一介绍下。     1、配置文件。首先在Host下添加个app.config文件。 WCF服务配置问题WCF服务配置问题
 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中,就可以简化代码如下了:

WCF服务配置问题WCF服务配置问题
 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服务配置编辑器。如下:

WCF服务配置问题

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

WCF服务配置问题

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

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

WCF服务配置问题

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

 WCF服务配置问题

双击serviceMetadata,设置属性

WCF服务配置问题

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

WCF服务配置问题

最后保存一下,就ok了。