2009-04-28 8 views
4

Я пытаюсь опубликовать службу расчета на кучу компьютеров, которые будут использоваться сервером приложений. Серверы вычислений являются работоспособными и должны иметь возможность выполнять асинхронные обратные вызовы, поэтому я хочу использовать настройки для каждого сеанса через TCP.WAS хостинг службы WCF с привязкой net.tcp

Приложение-приложение было построено с использованием типа проекта приложения службы WCF в VS2008.

Как это происходит, в сервисных машинах калькулятора работает Vista, поэтому, согласно документации, которую я прочитал, я должен использовать WAS-хостинг. Я пытаюсь следовать инструкциям Microsoft по данной теме:

Install and configure WCF components

Host a WCF service in WAS

Но я бегу в неприятности рано. Я должен поместить файл .svc в виртуальный каталог моего приложения. Но поскольку я не использую хостинг IIS, как мне создать виртуальный каталог? Представленные выше документы не совсем понятны.

Кроме того, при попытке выполнить команду, которая позволяет net.tcp доступ к моему заявлению:

%windir%\system32\inetsrv\appcmd.exe set app "Default Web Site/<WCF Application>" /enabledProtocols:net.tcp 

Я не знаю, что заменить <WCF Application> с. Опять же, кажется, что отсутствует предыдущий шаг, когда один из них публикует услугу в форме, подобной IIS.

Я создал тестовое приложение, которое пытается использовать сервис. Когда я нажимаю «Добавить ссылку на службу», он обнаруживает мою службу, но не может подключиться к ней с помощью net.tcp.

Неужели кто-нибудь здесь преуспел в WAS-хостинге и потреблении услуги? У вас есть какие-то указатели на меня?

UPDATE: теперь я попытался добавить привязки net.tcp к веб-сайту с помощью диспетчера IIS (щелкните правой кнопкой мыши -> Изменить привязки ...), но единственными протоколами, доступными в диалоговом окне «Добавить ...», являются http и https , Нет net.tcp в этом списке. И да, я установил компоненты не-HTTP-активации ... Очень странно.

ответ

5

С WAS является частью архитектуры IIS, необходимо создать виртуальный каталог в IIS сайт (например, «Default Web Site»), что указывает на физическое расположение службы WCF вы хостинг. Затем вам нужно будет создать приложение в этом виртуальном каталоге, например, для веб-сайта ASP.NET или веб-службы ASMX.
Вы можете легко сделать это, используя Консоль управления IIS 7.

Вы можете прочитать данные о том, как WAS работает в IIS7 here.
Для получения более шаг за шагом руководство по хостингу WAS взгляните на this article.

+0

Спасибо, я это сделать с помощью диспетчера IIS. Однако net.tcp недоступен в диалоговом окне «Редактировать привязки». Я не понимаю, почему, поскольку я добавил активацию без http. –

1

Вам необходимо добавить привязку net.tcp к привязке приложения в IIS.

Щелкните правой кнопкой мыши виртуальный каталог/приложение в IIS -> Управление приложением -> Расширенные настройки.

В разделе «Включенные протоколы» просто добавьте net.tcp и voila !!

1

У меня была такая же проблема, но она работала. См. Этот вопрос. Дайте мне знать, есть ли что-нибудь в руководстве, в котором вам нужна помощь, как это сделать.

Setting up WCF TCP service in a web application