Проблемы с WCF HTTP

Я новичок в WCF. Вчера я собрал свой первый самостоятельный сервис WCF. Все шло хорошо, однако я больше не получаю никакого HTTP-ответа от моей машины разработчика. Я даже не могу добраться до WSDL... Я надеялся, что кто-нибудь может посмотреть мою конфигурацию, пожалуйста?

host.Open (); на самом деле работает, так что, кажется, работает нормально; просто я не могу просмотреть ни одну из конечных точек в веб-браузере на хостинге без 404.

Program.cs

static void Main(string[] args)
{
    try
    {
        using (ServiceHost host = new ServiceHost(typeof(WebImageRenderer.Renderer)))
        {
            host.Open();
            Console.WriteLine(host.BaseAddresses[0].AbsoluteUri);
        }
    }
    catch (Exception ex) { Console.WriteLine(ex.Message); }
    while (true) Console.ReadLine();
}

App.Config

<?xml version="1.0"?>
<configuration>
  <system.serviceModel>
    <services>
      <service name="WebImageRenderer.Renderer" behaviorConfiguration="serviceBehavior">
        <endpoint address="" binding="basicHttpBinding" contract="WebImageRenderer.IRenderer"/>
        <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>
        <host>
          <baseAddresses>
            <add baseAddress="http://localhost:8000"/>
          </baseAddresses>
        </host>
      </service>
    </services>
    <behaviors>
      <serviceBehaviors>
        <behavior name="serviceBehavior">
          <serviceMetadata httpGetEnabled="true"/>
          <serviceDebug httpHelpPageEnabled="true" includeExceptionDetailInFaults="true"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
  </system.serviceModel>
</configuration>

Спасибо вам всем

1 ответ

Решение

Я думаю, что ваш ServiceHost закрывается, как только вы выходите из блока "using". Попробуйте поместить цикл ReadLine внутрь.

Другие вопросы по тегам