Обращаясь к видео учебному пособию о службе WCF в службе Windows, я создал образец службы WCF и разместил эту службу с netTcpBinding в службе Windows. (Поскольку я хочу, чтобы эта служба WCF выполнялась как служба Windows )
Это простой сервис, который добавляет / удаляет / загружает данные о сотрудниках и используется приложением Windows Form. Это работало нормально, когда я строил полное решение (состоящее из wcf service + windows service + client app), однако, когда я Я хотел убедиться, что мой клиент не имеет прямой ссылки на проект в решении, поэтому я исключил обе службы (wcf + windows) из своего решения. перестал работать выдает ошибку, читая:
Не удалось подключиться к net.tcp: // localhost: 8010 / EmployeeService.Service1 /. Попытка подключения продолжалась в течение промежутка времени 00: 00: 02.0180000. Код ошибки TCP 10061: не удалось установить соединение, потому что целевая машина активно отказала ему в этом. 127.0.0.1:8010.
Важный момент, который может помочь ответить:
- Служба WCF и служба Windows имеют идентичный app.config
- Служба Windows работает как служба
это мой клиент app.config
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.serviceModel>
<bindings>
<netTcpBinding>
<binding name="netTcpEndPoint" 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:10:00"
enabled="false" />
<security mode="Transport">
<transport clientCredentialType="Windows" protectionLevel="EncryptAndSign" />
<message clientCredentialType="Windows" />
</security>
</binding>
</netTcpBinding>
</bindings>
<client>
<endpoint address="net.tcp://localhost:8010/EmployeeService.Service1/"
binding="netTcpBinding" bindingConfiguration="netTcpEndPoint"
contract="Service1.IService1" name="netTcpEndPoint">
<identity>
<userPrincipalName value="user@company.com" />
</identity>
</endpoint>
</client>
</system.serviceModel>
</configuration>
любая помощь будет принята с благодарностью ....