Вам в основном нужно
- виртуальный каталог в IIS 7
- файл SVC (файл службы), который инструктирует IIS, как создать экземпляр вашей службы
У вас есть три варианта развертывания реализации сервиса:
вы можете поместить свою реализацию сервиса в файл с выделенным кодом файла SVC - это было бы моим наименее благоприятным вариантом - в основном, не делайте этого - оно становится грязным и не дает никакой выгоды
вы можете поместить свой файл класса обслуживания (файл MyService.cs) и файл интерфейса (IMyService.cs) в каталог App_Code
(если вы используете тип проекта веб-сайта) - снова, Мне не особенно нравится этот подход
ваш лучший вариант: поместите ваш контракт на обслуживание (интерфейс) и реализацию вашего сервиса в отдельную сборку библиотеки классов для этого сервиса и разверните этот MyService.dll
в каталоге .\bin
под виртуальным каталогом, где ваш SVC файл живёт.
Затем добавьте файл * .svc (чистый текстовый файл) в ваш виртуальный каталог, который содержит:
<%@ServiceHost language="c#" Debug="true" Service="MyService" %>
И, конечно, вам нужны соответствующие записи web.config - но я уверен, что они у вас уже есть, верно?
Ваш сервисный адрес сейчас:
http://YourServer/VirtualDirectory/YourService.svc
Для получения дополнительной информации см. Как: разместить службу WCF в IIS