Яка різниця між додатком служби WCF та бібліотекою послуг WCF?


118

Я розробляю веб-службу WCF, і для цього використовував шаблон додатка служби WCF.

Чи відповідає "додаток служби WCF" цією вимогою? Яка перевага створення бібліотеки служб WCF перед додатком служби WCF?

Відповіді:


148

Додаток до сервісу включає в себе вже налаштований хост веб-сайту. Бібліотека послуг - це бібліотека послуг, на яку хост може посилатися та запускатись.

Якщо ви почнете з бібліотеки служб (рекомендується), то можете вибрати будь-який хост (бажаний сервіс Windows, IIS / ASP.NET або навіть консольний додаток), і ви просто посилаєтесь на свою бібліотеку з нового хоста. Вибір Службової програми обмежує вашого хоста лише IIS / ASP.NET (хоча це може бути нормально для ваших цілей, але обмежить протоколи, які ви можете використовувати).

Редагувати : Зміни в IIS, оскільки я написав це, дозволяють отримати більш широкий спектр протоколів на сервісах, що активуються ASP.NET, тому вибір сервісного додатка набагато менш обмежує, ніж раніше.


1
Хтось має інформацію про нові протоколи / прив’язки, доступні під час розміщення на IIS?
Аллен Райс

@AndersonImes Я знаю, що це старий пост, але сподіваюся, що ви можете допомогти. Я шукав всюди і не можу знайти, чи призначена служба WCF замінити Веб-сервіс у .NET 3.5, і тому чому шаблон був видалений у .NET 4? Дякую. :)
Chiramisu

2
@Chiramisu WCF надає набагато більше переваг і гнучкість ... Я знайшов цей дуже корисний: приклад Codeproject , Stackoverflow питання
StoriKnow

@Sam Спасибі, Сем, дуже корисно. Таким чином WCF може зробити все, що може зробити Веб-сервіс і багато іншого? Будь-які обмеження мені цікаво ... :)
Chiramisu

1
@Chiramisu радий допомогти! Завжди є обмеження, але я думаю, що у WCF набагато менше обмежень, ніж у типового веб-сервісу.
StoriKnow

10

Якщо все, що у вас є, це один проект, я бачу лише додаткові складності, якщо ви розділите його на чорт. Я використовував бібліотеку, коли у мене були певні випадки використання, коли мені доводилося розміщувати і сервіс Windows, і IIS.

Для IIS ви можете переміщувати класи та інтерфейси в бібліотеку, але зберігати .SVC файли у веб-проекті. Ви повинні відредагувати .SVC файли, щоб вказати на правильно кваліфіковані класи.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.