У меня есть две WCF Services, объединенные в отдельном приложении. Файл конфигурации. Я не могу получить вещь работать (компиляции приложения, но сбои при инициализации сервисов).
Я задаюсь вопросом, должен ли я определить сервисное имя для совпадения с чем-то еще, что также определяется как часть сервиса в целом?
TypeInitializationException
{"Сервис 'MurexUploadObjects. ResponseService' имеет нулевое приложение (неинфраструктура) конечные точки. Это могло бы быть то, потому что никакой конфигурационный файл не был найден для Вашего приложения, или потому что никакой элемент обслуживания, соответствующий сервисному названию, не мог быть найден в конфигурационном файле, или потому что никакие конечные точки не были определены в элементе обслуживания".}
<system.serviceModel>
<configuration>
<behaviors>
<serviceBehaviors>
<behavior name="Service1Bevhavior">
</behavior>
<behavior name="Service2Bevhavior">
</behavior>
</serviceBehaviors>
</behaviors>
<bindings>
<netTcpBinding>
<binding name="tcpBloombergServiceEndPoint" closeTimeout="00:01:00"
openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
transactionFlow="false" transferMode="Buffered" transactionProtocol="OleTransactions"
hostNameComparisonMode="StrongWildcard" listenBacklog="10" maxBufferPoolSize="524288"
maxBufferSize="65536" maxConnections="10" maxReceivedMessageSize="65536">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<reliableSession ordered="true" inactivityTimeout="00:05:00"
enabled="true" />
<security mode="None">
<transport clientCredentialType="Windows" protectionLevel="EncryptAndSign" />
<message clientCredentialType="Windows" />
</security>
</binding>
<binding name="TransactedBinding">
<security mode="None" />
</binding>
</netTcpBinding>
</bindings>
<services>
<!--SERVICE ONE-->
<service name="INSERT NAME HERE">
<endpoint address="net.tcp://AP434190:8732/BloombergService/"
binding="netTcpBinding"
contract="BloomberPriceListenerService.IBloombergPriceListenerService"
bindingConfiguration="tcpBloombergServiceEndPoint"
name="tcpBloombergServiceEndPoint" />
</service>
<!--SERVICE TWO-->
<service name="INSERT NAME HERE">
<endpoint address="net.tcp://localhost:8735/private/MurexUploadObjects/ResponseService"
binding="netTcpBinding"
contract="MurexUploadObjects.IResponseService"
bindingConfiguration="TransactedBinding"
name="TransactedBinding"/>
</service>
</services>
</system.serviceModel>
</configuration>
Имя службы должно быть полным именем вашего класса службы, включая пространство имен, например
<service name="YourServiceNamespace.YourService">
Это не может быть что угодно - имя класса службы используется ServiceHost
, чтобы найти правильную конфигурацию службы.