Хост службы Workflow не публикует метаданные
Все еще хакерство с чрезвычайной настойчивостью в сервисах WF, размещенных вне IIS У меня сейчас проблемы с метаданными публикации WF-сервиса. Может кто-нибудь взглянуть на мой код и посмотреть, какой шаг мне не хватает? Несколько уроков, которые я наткнулся на свой сценарий, делают его таким простым, и я знаю, что это так. Я просто скучаю по чему-то смехотворно простому. Вот мой текущий пробный код:
const string serviceUri = "http://localhost:9009/Subscribe";
WorkflowServiceHost host = new WorkflowServiceHost( new Subscribe(), new Uri(serviceUri) );
host.AddDefaultEndpoints( );
host.Open();
Subscribe () - это действие, которое закодировано в файле xaml и содержит простые действия receive и sendreply, чтобы протестировать мою размещенную службу рабочего процесса. Это НЕ файл xamlx (служба WF). Похоже, это должно быть достаточно просто для работы, но когда я запускаю приложение и служба запускается, я получаю это сообщение в своем браузере при переходе к URI:
"Публикация метаданных для этой службы в настоящее время отключена".
Разве добавление конечных точек по умолчанию не должно предоставлять достаточно метаданных и описания, чтобы удовлетворить службу init, а затем перейти в состояние ожидания сообщения?
2 ответа
Ну, похоже, что процесс отладки завис на моей машине. Я просто использовал диспетчер задач, чтобы найти исполняемый файл и завершить процесс зомби.
Для любых будущих новичков это также может быть вызвано неправильной настройкой app.config. Добавьте ниже в ваш app.config, а затем откройте расположение службы в вашем браузере:
<system.serviceModel>
<bindings />
<client />
<behaviors>
<serviceBehaviors>
<behavior>
<serviceDebug includeExceptionDetailInFaults="True"
httpHelpPageEnabled="True"/>
<serviceMetadata httpGetEnabled="True"/>
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>