Хостинг ASPX и WCF
Я много искал способы размещения WCF
и нашел их для работы, однако, в моем решении у меня есть WCF Service Project
(оно имеет web.config
с некоторыми строками подключения) и ASPX.NET
проект (он также имеет web.config
), мог бы кто-нибудь уточнить, как я могу разместить их на веб-сайте.
Спасибо.
3 ответа
Хотите ли вы, чтобы любой другой клиент получил доступ к этой службе WCF?
Если нет, просто сохраните файл.svc в существующем веб-приложении и используйте его, когда вам нужно.
Если да, разместите проект WCF как веб-сайт в IIS, консоли или WAS и отправьте его из своего веб-приложения aspx.
Это просто, вам просто нужно добавить файл.svc в ваш проект ASPX.net. например, Service1.svc
Затем добавьте следующий код в файл
<%@ ServiceHost Language="C#" Service="WCFServiceProject.Main" %>
WCFServiceProject.Main - это полностью определенное пространство имен и имя класса, который обеспечивает функциональность вашего сервиса.
Вам также нужно будет зарегистрировать расширение svc в IIS, чтобы оно работало, если вы этого еще не сделали. И не забудьте добавить ссылку на сервисный проект WCF в проект aspx.net.
Если вы хотите создать сервис динамически, тогда посмотрите мой вопрос для некоторых советов Создание сервиса wcf в IIS в коде
Просто перечитайте обновленный (отредактированный) вопрос. Вам нужно будет скопировать детали подключения из сервисного проекта WCF в ваш проект asp.net.
Для размещения сервиса WCF у вас есть следующие опции:
- Приложения WinForms
- Консольные приложения
- Службы Windows
- Веб-приложения (ASP.NET), размещенные на информационных службах Интернета (IIS)
- Службы WCF в IIS 7.0 и WAS в Windows Vista или Windows Server с кодовым именем "Longhorn"
Смотрите здесь для получения дополнительной информации о размещении службы WCF.
Для размещения приложения Asp.Net я бы порекомендовал использовать IIS, см. Здесь, как. Однако, используя WSE, также можно разместить его как службу Windows. Смотрите здесь как.