我有一个控制台应用程序,该应用程序在App.config
中声明了两个服务,但是在其他Project中,只能检测到第一个主机服务。
错误是:
HTTP 405:不允许的方法
<service name="ServicioBroker.Servicio.tabla_contenedor">
<endpoint address="get" binding="wsDualHttpBinding" contract="ServicioBroker.Cambios.IContenedor">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
<host>
<baseAddresses>
<add baseAddress="http://localhost:8000/ServicioTablaContenedor/" />
</baseAddresses>
</host>
</service>
<service name="ServicioBroker.Servicio.buques">
<endpoint address="get" binding="wsDualHttpBinding" contract="ServicioBroker.Cambios.IBuques">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
<host>
<baseAddresses>
<add baseAddress="http://localhost:8000/ServicioTablaBuques/" />
</baseAddresses>
</host>
</service>
我不确定这是否是声明托管服务的正确方法
我在这里附加项目 https://github.com/jafetrd/BDatos_API/tree/master/ServicioBroker
我使用以下代码启动service1类中的服务:
var host = new ServiceHost(typeof(tabla_contenedor));
host.Open();
Console.WriteLine($"Servicio 1 iniciado en {host.Description.Endpoints[0].Address}");
while (!(host.State == CommunicationState.Opened)) { }
var host2 = new ServiceHost(typeof(buques));
host2.Open();
Console.WriteLine($"Servicio 2 iniciado en {host2.Description.Endpoints[0].Address}");
我想知道如何检测托管的SECOND服务,仅尝试使用SECOND服务,而我的客户端应用程序无法检测到该代码。