WCF中的ServiceHost初始化两种方式
2014-07-10 15:40
288 查看
在宿主程序中初始化ServiceHost有直接写代码和使用配置文件两种方式。使用ServiceHost首先要引用System.ServiceModel 命名空间。
1 代码方式
using(ServiceHost host=new ServiceHost(typeof(HelloWordService))) { host.AddServiceEndpoint(typeof(IHelloWordService), new BasicHttpBinding(), new Uri("http://localhost:10000/HelloWorldService")); host.AddServiceEndpoint(typeof(IHelloWordService), new NetTcpBinding(), new Uri("net.tcp://localhost:10001/HelloWorldService")); if (host.State != CommunicationState.Opening) host.Open(); }
2 配置文件方式
配置文件代码:<services>
<service behaviorConfiguration="serverBehavior" name="HelloWordService">
<endpoint address="http://localhost:10000/HelloWorldService"
binding="basicHttpBinding" contract="IHelloWordService"></endpoint>
<endpoint address="net.tcp://localhost:10001/HelloWorldService"
binding="netTcpBinding" contract="IHelloWorldService"></endpoint>
</service>
</services>
当然也可以使用基地址的方式来配置
<services>
<service behaviorConfiguration="serverBehavior" name="HelloWordService">
<endpoint address="HelloWorldService"
binding="basicHttpBinding" contract="IHelloWordService"></endpoint>
<endpoint address="HelloWorldService"
binding="netTcpBinding" contract="IHelloWorldService"></endpoint>
<host>
<baseAddresses>
<add baseAddress="http://localhost:10000/"/>
<add baseAddress="net.tcp://localhost:10001/"/>
</baseAddresses>
</host>
</service>
</services>
配置好配置文件后就宿主程序中就很简单了,如下:
using(ServiceHost host=new ServiceHost(typeof(HelloWordService)))
{
if (host.State != CommunicationState.Opening)
host.Open();
}
相关文章推荐
- WCF中的ServiceHost初始化两种方式(宿主)
- WCF中的ServiceHost初始化两种方式
- WCF中的ServiceHost初始化两种方式
- WCF中的ServiceHost初始化两种方式
- WCF中的ServiceHost初始化两种方式
- WCF中的ServiceHost初始化两种方式
- BizTalk Orchestration Publish Host In-Process Wcf Service without IIS 多种供客户端调用方式
- BizTalk Orchestration Publish Host In-Process Wcf Service without IIS 多种供客户端调用方式
- 探讨 : Host在IIS上的WCF Service的执行方式
- WCF ServiceHost的实例方式及ServiceHost实例的并发方式
- Host多个WCF服务(Self-host)Start ServiceHosts for all configured Services
- Host WCF Service in WAS
- Host WCF Service in WAS
- 停止通过startService()方式启动的service的两种方法
- WCF Service Host和WCF Test Client
- service注入action两种方式
- Spring下的Bean初始化和销毁两种方式
- WCF中客户端生成代理的两种方式
- 关于”System.ServiceModel.Activation.WebServiceHostFactory“与"<webHttp/>"以及RestFul/启用了Ajax的WCF服务
- WCF中客户端生成代理的两种方式