Добрый деньхостинг службы WCF в службе Windows,
Я хочу разместить службу WCF в службе Windows, и как таковой, я слежу за учебник: http://msdn.microsoft.com/en-us/library/ff649818.aspx
Во «Шаг 8: Добавить службы WCF Ссылка на клиента» я получаю следующие ошибки:
- не удалось подключиться к net.Tcp: // LOCALHOST: 100/триггерами.
- Попытка подключения продолжалась в течение 00: 00: 02.0058550.
- TCP код ошибки 10061: Подключение не может быть сделано, потому что целевая машина активно отказалась его 127.0.0.1:100
Я попробовал большинство, если не все решения, упомянутые на следующем сайте: http://social.msdn.microsoft.com/forums/en-US/wcf/thread/58e420e9-43a3-4119-b541-d18158038e36/ безрезультатно.
Может кто-нибудь, пожалуйста, осветить какой-нибудь свет по этому поводу?
Ниже приводится WCF конфигурационный файл:
<?xml version="1.0"?>
<configuration>
<connectionStrings>
<!-- <add name="ABSAConnectionString" connectionString="Data Source=192.168.0.18;Initial Catalog=ABSA;Integrated Security=False;user=Wimpie;password=menschen;" -->
<!-- Charlene -->
<!--<add name="ABSAConnectionString" connectionString="Data Source=ik-charlene\SQL2008;Initial Catalog=ABSA;Integrated Security=True" providerName="System.Data.SqlClient" />-->
<add name="ABSAConnectionString" connectionString="Data Source=.\;Initial Catalog=ABSANICO;Integrated Security=True" providerName="System.Data.SqlClient" />
</connectionStrings>
<system.web>
<compilation debug="true" targetFramework="4.0" />
<authentication mode="Forms"/>
<authorization>
<!--<deny users="?"/>-->
<allow users="?"/>
</authorization>
<membership defaultProvider="Membership">
<providers>
<clear/>
<add name="Membership" type="ABSAService.Membership"/>
</providers>
</membership>
</system.web>
<system.serviceModel>
<services>
<service name="ABSAService.Triggers" behaviorConfiguration="ABSAService.TriggersBehavior" >
<endpoint address="" binding="netTcpBinding" bindingConfiguration="" contract="ABSAService.ITriggers">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="mex" binding="mexTcpBinding" bindingConfiguration="" contract="IMetadataExchange" />
<host>
<baseAddresses>
<add baseAddress="net.tcp://localhost:100/Triggers" />
</baseAddresses>
</host>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="ABSAService.TriggersBehavior">
<serviceMetadata httpGetEnabled="false" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
</system.serviceModel>
<system.diagnostics>
<sources>
<source name="System.ServiceModel" switchValue="Information, ActivityTracing" propagateActivity="true">
<listeners>
<add name="traceListener" type="System.Diagnostics.XmlWriterTraceListener" initializeData= "c:\log\Traces.svclog" />
</listeners>
</source>
<source name="CardSpace">
<listeners>
<add name="xml" />
</listeners>
</source>
<source name="System.IO.Log">
<listeners>
<add name="xml" />
</listeners>
</source>
<source name="System.Runtime.Serialization">
<listeners>
<add name="xml" />
</listeners>
</source>
<source name="System.IdentityModel">
<listeners>
<add name="xml" />
</listeners>
</source>
<source name="UserTraceSource" switchValue="Warning, ActivityTracing" >
<listeners>
<add name="xml"
type="System.Diagnostics.XmlWriterTraceListener"
initializeData="C:\logs\UserTraces.svclog" />
</listeners>
</source>
</sources>
<trace autoflush="true" />
<sharedListeners>
<add name="xml"
type="System.Diagnostics.XmlWriterTraceListener"
initializeData="c:\log\Traces.svclog" />
</sharedListeners>
</system.diagnostics>
</configuration>
Далее это конфигурационный файл службы Windows (который так же, как и выше в зависимости от урока):
<?xml version="1.0"?>
<configuration>
<connectionStrings>
<!-- <add name="ABSAConnectionString" connectionString="Data Source=192.168.0.18;Initial Catalog=ABSA;Integrated Security=False;user=Wimpie;password=menschen;" -->
<!-- Charlene -->
<!--<add name="ABSAConnectionString" connectionString="Data Source=ik-charlene\SQL2008;Initial Catalog=ABSA;Integrated Security=True" providerName="System.Data.SqlClient" />-->
<add name="ABSAConnectionString" connectionString="Data Source=.\;Initial Catalog=ABSANICO;Integrated Security=True" providerName="System.Data.SqlClient" />
</connectionStrings>
<system.web>
<compilation debug="true" targetFramework="4.0" />
<authentication mode="Forms"/>
<authorization>
<!--<deny users="?"/>-->
<allow users="?"/>
</authorization>
<membership defaultProvider="Membership">
<providers>
<clear/>
<add name="Membership" type="ABSAService.Membership"/>
</providers>
</membership>
</system.web>
<system.serviceModel>
<services>
<service name="ABSAService.Triggers" behaviorConfiguration="ABSAService.TriggersBehavior" >
<endpoint address="" binding="netTcpBinding" bindingConfiguration="" contract="ABSAService.ITriggers">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="mex" binding="mexTcpBinding" bindingConfiguration="" contract="IMetadataExchange" />
<host>
<baseAddresses>
<add baseAddress="net.tcp://localhost:100/Triggers" />
</baseAddresses>
</host>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="ABSAService.TriggersBehavior">
<serviceMetadata httpGetEnabled="false" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
</system.serviceModel>
</configuration>
Извините за этот вопрос - но работает ли ваш сервис Windows? Вы запустили хост wcf во время выигрыша. запуск службы? Кроме того, есть ли у вас брандмауэр, который может блокировать порт 100? Я видел, что вы включили трассировку - просмотрели ли вы его с помощью svcTraceViewer? – evgenyl
@evgenyl Никогда не запускался сервис Windows, который решил проблему. – Ronin