WCF срещу Web Service
Уеб услугите и фондовете за комуникация на Windows (WCF) са два метода, които приложенията комуникират по мрежа.
Повече за уеб услугите
Уеб услугите са компоненти на приложения, до които можете да получите достъп чрез отворени протоколи като SOAP (Simple Object Access Protocol), който е XML базиран език, разработен от W3C, за кодиране и предаване на данни. SOAP използва XML за описания на данни и HTTP за трансфер на данни. Основните предимства, предоставени от тези отворени протоколи, са оперативната съвместимост на услугите, въпреки разликите в използваните платформи и програмните езици. Уеб услуги използват (WSDL) Език на описанията на уеб услугите), за да опишат услугите, и UDDI (Универсално описание, откриване и интеграция) за списък на наличните услуги. Уеб услугите не се нуждаят от уеб браузър или HTML за работа и могат или не могат да съдържат GUI, както е дефинирано от приложението. Уеб услугите могат да бъдат реализирани с ASP.NET.
Повече за фондацията за комуникация с Windows (WCF)
Фондът за комуникация с Windows е представен, за да замени по-ранните платформи за уеб услуги и използва архитектура, ориентирана към услуги в изграждането на приложения. Оперативната съвместимост и множеството модели на съобщения, метаданните за услуги, договорите за данни и множеството транспортни кодировки са характеристики на WCF. Издръжливите съобщения, AJAX и REST, както и функциите за сигурни транзакции добавят повече гъвкавост на платформата, отколкото по-ранните уеб услуги.
Каква е разликата между Web Services и WCF? • Уеб услугите могат да бъдат хоствани в IIS (Интернет информационна услуга) или извън IIS, докато WCF може да бъде хостван в IIS, WAS (Windows Activation Service). WCF услугите обикновено могат да бъдат хоствани в IIS 5.1 или 6.0, услугата за активиране на процесите в Windows (WAS), която се предоставя като част от IIS версия 7.0 и в рамките на всяко .NET приложение. За да хоствате уеб услуга във IIS версия 5.1 или 6.0, е задължително уеб услугите да използват HTTP като протокол за транспорт на комуникация. • В платформата Web Services атрибутът Web Service ще бъде добавен в горната част на класа, докато в WCF ще има атрибут на Service Contract. По същия начин атрибутът за уеб метод се добавя отгоре на метода на уеб услугата, докато в WCF ще бъде добавен договор за експлоатация на услугата в горния метод. • Уеб услугите използват XML 1.0, MTOM (механизъм за оптимизация на предаване на съобщения) и DIME кодировки, докато WCF използва XML 1.0, MTOM и двоични кодировки. И двете платформи поддържат персонализирани методи за кодиране. • Платформата за уеб услуги поддържа XML сериализация, докато в WCF платформата за услуги поддържа сериализация на Време за изпълнение. • WCF услугите могат да бъдат многопоточни чрез клас поведение на услугите, докато уеб услугите не могат да бъдат многопоточни. • WCF Services поддържат различни видове връзки като BasicHttpBinding, WSHttpBinding, WSDualHttpBinding, докато уеб услугите използват SOAP или XML за тази цел. • Уеб услугите се компилират в събрание на библиотеката на класа. Предоставен е файл, наречен „файл на услугата“, който има разширението .asmx и съдържа директива @ WebService, която идентифицира класа, който съдържа кода за услугата и монтажа, в който се намира в WCF. |