我有大约15-20个服务,每个服务都有自己的合同和实现文件。我想在控制台应用程序中托管所有这些服务,以便在开发期间更容易调试。
项目结构
- 服务-解决方案 - ServiceContracts-项目 - Implementation-项目 - ServiceHost-Windows服务项目--已安装并正常工作。 - ServiceConsoleHost-项目-目前正在处理它。
我在ServiceConsoleHost项目中有一个app.config文件,以下是配置文件中的示例文本...
项目结构
- 服务-解决方案 - ServiceContracts-项目 - Implementation-项目 - ServiceHost-Windows服务项目--已安装并正常工作。 - ServiceConsoleHost-项目-目前正在处理它。
我在ServiceConsoleHost项目中有一个app.config文件,以下是配置文件中的示例文本...
<service name="TestpricingService" behaviorConfiguration="HostBehavior">
<host>
<baseAddresses>
<add baseAddress="http://localhost:8000/testService/pricingService"/>
</baseAddresses>
</host>
<!-- use base address provided by host -->
<endpoint address="net.tcp://localhost:820/testService/pricingService"
binding="netTcpBinding"
bindingConfiguration="HostBinding"
contract="Test.Services.Contracts.IpricingService" />
<!-- the mex endpoint is exposed at http://localhost:8000/testService/purchasing/mex -->
<endpoint address="mex"
binding="mexHttpBinding"
contract="IMetadataExchange" />
</service>
<behaviors>
<serviceBehaviors>
<behavior name="HostBehavior">
<serviceMetadata httpGetEnabled="True"/>
<serviceDebug includeExceptionDetailInFaults="True" />
<dataContractSerializer maxItemsInObjectGraph="2147483647"/>
</behavior>
<behavior name="PooledHostBehavior">
<serviceMetadata httpGetEnabled="True"/>
<serviceDebug includeExceptionDetailInFaults="True" />
<ObjectPoolingServiceBehavior minPoolSize="0" maxPoolSize="5" idleTimeOut="30000"/>
</behavior>
</serviceBehaviors>
</behaviors>
提前感谢您……
ServiceHost
只能承载 一个服务 - 因此,如果您需要托管 15 个服务,则需要 15 个ServiceHost
实例。 - marc_s