WCF: была предпринята попытка выполнить операцию на несуществующем сетевом соединении - PullRequest
1 голос
/ 01 марта 2011

Я сейчас размещаю wcf сервисы в консольном приложении, и иногда я получаю эту ошибку в wcf tracer. Msgstr "Операция была предпринята для несуществующего сетевого подключения". Я проверил просмотрщик событий, там ничего нет. Это происходит только тогда, когда клиент звонит на наши серверы (иногда только), из внутренней сети работает нормально.

Мой конфиг выглядит так: Конфигурация хоста WCF:

 <system.serviceModel>
<behaviors>
  <serviceBehaviors >
    <behavior name="MyServiceBehavior">
      <serviceMetadata httpGetEnabled="false" />
      <serviceDebug includeExceptionDetailInFaults="true" />
  </behavior>
  </serviceBehaviors>
</behaviors>
<bindings>
  <wsHttpBinding>
    <binding name="wsHttpBindingConfig" closeTimeout="00:05:00" openTimeout="00:05:00"
      receiveTimeout="00:05:00" sendTimeout="00:05:00" maxBufferPoolSize="2147483647"
      maxReceivedMessageSize="2147483647" messageEncoding="Text">
      <readerQuotas maxDepth="32" maxStringContentLength="2147483647"
        maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" />
      <security mode="None">
        <transport clientCredentialType="None" proxyCredentialType="None" />
        <message clientCredentialType="None" negotiateServiceCredential="false"
          establishSecurityContext="false" />
      </security>
    </binding>
  </wsHttpBinding>
</bindings>
<services>
  <service name="HSL.MM.Activities.FacilityHandlers.FacilitiesHandler" behaviorConfiguration="MyServiceBehavior">
    <endpoint address="http://localhost:8081/facilitiesService" bindingConfiguration="wsHttpBindingConfig" binding="wsHttpBinding" contract="HSL.MM.Activities.Interface.FacilityHandlers.IFacilitiesHandler"/>
  </service>
  <service name="HSL.MM.Activities.ContractHandlers.ContractHandler" behaviorConfiguration="MyServiceBehavior">
    <endpoint address="http://localhost:8081/contractService"  bindingConfiguration="wsHttpBindingConfig" binding="wsHttpBinding" contract="HSL.MM.Activities.Interface.ContractHandlers.IContractHandler"/>
  </service>
  <service name="HSL.MM.Activities.ContractHandlers.ModuleHandler" behaviorConfiguration="MyServiceBehavior">
    <endpoint address="http://localhost:8081/moduleService" bindingConfiguration="wsHttpBindingConfig" binding="wsHttpBinding" contract="HSL.MM.Activities.Interface.ContractHandlers.IModuleHandler"/>
  </service>
  <service name="HSL.MM.Activities.LocationHandlers.LocationsHandler" behaviorConfiguration="MyServiceBehavior">
    <endpoint address="http://localhost:8081/locationsService"  bindingConfiguration="wsHttpBindingConfig" binding="wsHttpBinding" contract="HSL.MM.Activities.Interface.LocationHandlers.ILocationsHandler"/>
  </service>
  <service name="HSL.Client.Activities.ClientHandler" behaviorConfiguration="MyServiceBehavior">
    <endpoint address="http://localhost:8081/clientService"  bindingConfiguration="wsHttpBindingConfig" binding="wsHttpBinding" contract="HSL.Client.Activities.Interface.IClientHandler"/>
  </service>
  <service name="HSL.MM.Activities.ProductHandler" behaviorConfiguration="MyServiceBehavior">
    <endpoint address="http://localhost:8081/productService"  bindingConfiguration="wsHttpBindingConfig" binding="wsHttpBinding" contract="HSL.MM.Activities.Interface.IProductHandler"/>
  </service>
  <service name="HSL.MM.Activities.DistributorHandlers.DistributorsHandler" behaviorConfiguration="MyServiceBehavior">
    <endpoint address="http://localhost:8081/distributorsService" bindingConfiguration="wsHttpBindingConfig" binding="wsHttpBinding" contract="HSL.MM.Activities.Interface.DistributorHandlers.IDistributorsHandler"/>
  </service>
  <service name="HSL.MM.Activities.InformationSourceHandlers.InformationSourcesHandler" behaviorConfiguration="MyServiceBehavior">
    <endpoint address="http://localhost:8081/informationSourcesService" bindingConfiguration="wsHttpBindingConfig" binding="wsHttpBinding" contract="HSL.MM.Activities.Interface.InformationSourceHandlers.IInformationSourcesHandler"/>
  </service>
  <service name="HSL.MM.Activities.ProductStatisticHandlers.ProductStatisticsHandler" behaviorConfiguration="MyServiceBehavior">
    <endpoint address="http://localhost:8081/productStatisticsService" bindingConfiguration="wsHttpBindingConfig" binding="wsHttpBinding" contract="HSL.MM.Activities.Interface.ProductStatisticHandlers.IProductStatisticsHandler"/>
  </service>
  <service name="HSL.MM.Activities.SecurityHandler" behaviorConfiguration="MyServiceBehavior">
    <endpoint address="http://localhost:8081/securityService" bindingConfiguration="wsHttpBindingConfig" binding="wsHttpBinding" contract="HSL.MM.Activities.Interface.ISecurityHandler"/>
  </service>
  <service name="HSL.MM.Activities.ProductStatisticHandlers.ProductStatisticIntegrationHandler" behaviorConfiguration="MyServiceBehavior">
    <endpoint address="http://localhost:8081/productStatisticIntegrationService" bindingConfiguration="wsHttpBindingConfig" binding="wsHttpBinding" contract="HSL.MM.Activities.Interface.ProductStatisticHandlers.IProductStatisticIntegrationHandler"/>
  </service>
</services>


И клиентский конфиг выглядит так:

  <system.serviceModel>
<bindings>
  <wsHttpBinding>
    <binding name="wsHttpBindigConfig" maxReceivedMessageSize="2147483647" maxBufferPoolSize="2147483647" receiveTimeout="00:05:00" sendTimeout="00:05:00">
      <readerQuotas maxDepth="32" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" />
      <security mode="None">
        <message clientCredentialType="None" />
        <transport clientCredentialType="None">
        </transport>
      </security>
    </binding>
  </wsHttpBinding>
</bindings>
<client>
  <endpoint address="http://***.***.**.**:8081/facilitiesService" binding="wsHttpBinding" bindingConfiguration="wsHttpBindigConfig" contract="HSL.MM.Activities.Interface.FacilityHandlers.IFacilitiesHandler" name="FacilitiesService"/>
  <endpoint address="http://***.***.**.**:8081/contractService" binding="wsHttpBinding" bindingConfiguration="wsHttpBindigConfig" contract="HSL.MM.Activities.Interface.ContractHandlers.IContractHandler" name="ContractService"/>
  <endpoint address="http://***.***.**.**:8081/moduleService" binding="wsHttpBinding" bindingConfiguration="wsHttpBindigConfig" contract="HSL.MM.Activities.Interface.ContractHandlers.IModuleHandler" name="ModuleService"/>
  <endpoint address="http://***.***.**.**:8081/locationsService" binding="wsHttpBinding" bindingConfiguration="wsHttpBindigConfig" contract="HSL.MM.Activities.Interface.LocationHandlers.ILocationsHandler" name="LocationsService"/>
  <endpoint address="http://***.***.**.**:8081/clientService" binding="wsHttpBinding" bindingConfiguration="wsHttpBindigConfig" contract="HSL.Client.Activities.Interface.IClientHandler" name="ClientService"/>
  <endpoint address="http://***.***.**.**:8081/productService" binding="wsHttpBinding" bindingConfiguration="wsHttpBindigConfig" contract="HSL.MM.Activities.Interface.IProductHandler" name="ProductService"/>
  <endpoint address="http://***.***.**.**:8081/distributorsService" binding="wsHttpBinding" bindingConfiguration="wsHttpBindigConfig" contract="HSL.MM.Activities.Interface.DistributorHandlers.IDistributorsHandler" name="DistributorsService"/>
  <endpoint address="http://***.***.**.**:8081/informationSourcesService" binding="wsHttpBinding" bindingConfiguration="wsHttpBindigConfig" contract="HSL.MM.Activities.Interface.InformationSourceHandlers.IInformationSourcesHandler" name="InformationSourcesService"/>
  <endpoint address="http://***.***.**.**:8081/productStatisticsService" binding="wsHttpBinding" bindingConfiguration="wsHttpBindigConfig" contract="HSL.MM.Activities.Interface.ProductStatisticHandlers.IProductStatisticsHandler" name="ProductStatisticsService"/>
  <endpoint address="http://***.***.**.**:8081/securityService" binding="wsHttpBinding" bindingConfiguration="wsHttpBindigConfig" contract="HSL.MM.Activities.Interface.ISecurityHandler" name="securityService"/>
  <endpoint address="http://***.***.**.**:8081/productStatisticIntegrationService" binding="wsHttpBinding" bindingConfiguration="wsHttpBindigConfig" contract="HSL.MM.Activities.Interface.ProductStatisticHandlers.IProductStatisticIntegrationHandler" name="productStatisticIntegrationService"/>
</client>

Самое смешное, что это случается иногда, а не всегда. : S

1 Ответ

0 голосов
/ 04 марта 2011

Как оказалось проблема была в порте.8081 использовался для прокси, когда два пользователя из одной сети использовали приложение, возникла проблема.Как только мы поставили порт 8080, все заработало

Глупое исключение для глупой проблемы:)

...