Проблемы при создании экземпляра класса Uri для хранения базового адреса службы WCF - PullRequest
0 голосов
/ 20 декабря 2018

Я создал отдельные решения следующим образом:

  1. Решение A - которое определяет и реализует контракт на обслуживание для услуги R с интерфейсом IR, а имя проекта - ALib.
  2. Решение B- разместить контракт на обслуживание и запустить его.

Когда я запускаю хост-приложение, оно работает нормально, но я не могу получить доступ к URL с предоставленным базовым адресом.Я обновил файл App.config, как указано в Учебное пособие по WCF

Позволяет разбить то, что было обновлено в файле App.config.

1. <service name="ALib.R"> 
2. <add baseAddress = "http://localhost:8000/A/R" />
3. <endpoint address="" binding="wsHttpBinding" contract="ALib.IR">

Когда я печатаюURL "http://localhost:8000/A/R" Я получаю ошибку HTTP 400, но я получаю страницу с" http://localhost:8000/A/". Это не так, как это делается внутри учебника.Я также включил метаданные следующим образом:

            var smb = new ServiceMetadataBehavior
            {
                HttpGetEnabled = true
            };
            selfHost.Description.Behaviors.Add(smb);

Чего-то не хватает в том, что делается до сих пор?

1 Ответ

0 голосов
/ 21 декабря 2018

Пожалуйста, попробуйте следующую конфигурацию.

<system.serviceModel>
    <services>
      <service name="Server6.MyService">
        <endpoint address="" binding="wsHttpBinding" contract="Server6.IService">
        </endpoint>
        <endpoint address="mex" binding="mexHttpBinding" contract="Server6.IService"></endpoint>
        <host>
          <baseAddresses>
            <add baseAddress="http://localhost:13050/A/R"/>
          </baseAddresses>
        </host>
      </service>
    </services>
    <behaviors>
      <serviceBehaviors>
        <behavior>
          <serviceMetadata httpGetEnabled="true"></serviceMetadata>
        </behavior>
      </serviceBehaviors>
    </behaviors>
  </system.serviceModel>

Не стесняйтесь, дайте мне знать, если есть что-то, с чем я могу помочь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...