Невозможно подключиться к службе WCF с сайта MVC - PullRequest
1 голос
/ 18 ноября 2011

Я написал службу WCF, которая размещена в службе Windows на моем домашнем компьютере. Затем я написал сайт MVC3, который пытается подключиться к сервису. Сайт MVC3 размещен на серверах Godaddy. Я правильно открыл порты на своем брандмауэре, потому что я могу получить доступ к сайту описания сервиса с компьютера в другой сети, и у меня даже был друг, подключенный к веб-службе из консольного приложения, работающего на его компьютере, и он работал отлично , Однако, когда я пытаюсь вызвать веб-сервис с моего сайта MVC3, он выдает следующую ошибку:

Не было прослушивания конечной точки на http://myExternIpAddress:8000/MyService/service, которая могла бы принять сообщение. Это часто вызвано неправильным адресом или действием SOAP. См. InnerException, если имеется, для получения более подробной информации.

Вот важная часть app.config для службы:

<services>
          <service  name="MyService.MyService"
                    behaviorConfiguration="MyServiceBehavior" >
            <host>
              <baseAddresses>
                <add baseAddress="http://localhost:8000/MyService/service" />
              </baseAddresses>
            </host>              
            <endpoint address="" 
                      binding="basicHttpBinding" 
                      contract="MyService.IMyService" />
            <endpoint address="mex" 
                      binding="mexHttpBinding" 
                      contract="IMetadataExchange" />

          </service>
      </services>
      <behaviors>
        <serviceBehaviors>
          <behavior name="MyServiceBehavior">
            <serviceMetadata httpGetEnabled="true"/>
            <serviceDebug includeExceptionDetailInFaults="true"/>
          </behavior>
        </serviceBehaviors>
      </behaviors>

и вот служебный раздел web.config для сайта MVC3

<system.serviceModel>
    <bindings>
      <basicHttpBinding>
        <binding name="BasicHttpBinding_IMyService" />
      </basicHttpBinding>
    </bindings>
    <client>
      <endpoint address="http://myExternalIpAddress:8000/MyService/service"
        binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IMyService"
        contract="LocalService.IMyService" name="BasicHttpBinding_IMyService" />
    </client>
    <behaviors>
      <serviceBehaviors>
        <behavior name="">
          <serviceMetadata httpGetEnabled="true" />
          <serviceDebug includeExceptionDetailInFaults="false" />
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
  </system.serviceModel>

Спасибо за любую помощь, которую вы можете оказать!

1 Ответ

1 голос
/ 18 ноября 2011

Я бы связался с GoDaddy для поддержки.Если служба WCF работает с вашего компьютера друзей, скорее всего, это проблема среды хостинга.

...