WCF vs Web Service
Serviços da Web e Windows Communication Foundations (WCF) são dois métodos pelos quais os aplicativos se comunicam em uma rede.
Mais sobre Web Services
Web services são componentes de aplicações, que podem ser acessados por meio de protocolos abertos como SOAP (Simple Object Access Protocol), que é uma linguagem baseada em XML desenvolvida pelo W3C, para codificar e transmitir dados. SOAP usa XML para descrições de dados e HTTP para transferência de dados. As principais vantagens oferecidas por esses protocolos abertos são a interoperabilidade dos serviços, apesar das diferenças nas plataformas e nas linguagens de programação utilizadas. Os serviços da Web usam (WSDL) Web services Descriptions Language) para descrever os serviços e UDDI (Universal Description, Discovery and Integration) para listar os serviços disponíveis. Os serviços da Web não precisam de um navegador da Web ou HTML para operar e podem ou não conter uma GUI conforme definido pelo aplicativo. Os serviços da Web podem ser implementados com ASP. NET.
Mais sobre o Windows Communication Foundation (WCF)
O Windows Communication Foundation foi introduzido para substituir plataformas de serviço da Web anteriores e usa arquitetura orientada a serviços na criação de aplicativos. Interoperabilidade e vários padrões de mensagens, metadados de serviço, contratos de dados e várias codificações de transporte são recursos do WCF. Mensagens duráveis, AJAX e REST e recursos de transações seguras adicionam mais versatilidade à plataforma do que os serviços da web anteriores.
Qual é a diferença entre Web Services e WCF?
• Os serviços da Web podem ser hospedados no IIS (Internet Information Service) ou fora do IIS, enquanto o WCF pode ser hospedado no IIS, WAS (Windows Activation Service). Os serviços WCF geralmente podem ser hospedados no IIS 5.1 ou 6.0, no Windows Process Activation Service (WAS) fornecido como parte do IIS versão 7.0 e em qualquer aplicativo. NET. Para hospedar um serviço da Web no IIS versão 5.1 ou 6.0, é obrigatório que os serviços da Web usem HTTP como protocolo de transporte de comunicações.
• Na plataforma Web Services, o atributo Web Service será adicionado ao topo da classe enquanto, no WCF, haverá um atributo Service Contract. Da mesma forma, o atributo Web Method é adicionado no topo do método do serviço Web enquanto, no WCF, o Service Operation Contract será adicionado no topo do método.
• Os serviços da Web usam codificações XML 1.0, MTOM (Message Transmission Optimization Mechanism) e DIME, enquanto o WCF usa codificações XML 1.0, MTOM e Binary. Ambas as plataformas suportam métodos de codificação personalizados.
• A plataforma de serviço da web suporta serialização XML enquanto, no WCF, a plataforma de serviço suporta serialização em tempo de execução.
• Os serviços WCF podem ser multiencadeados por meio da classe Comportamento de Serviço, enquanto os serviços da Web não podem ser multiencadeados.
• Os serviços WCF suportam diferentes tipos de ligações, como BasicHttpBinding, WSHttpBinding, WSDualHttpBinding, enquanto os serviços da Web usam apenas SOAP ou XML para essa finalidade.
• Os serviços da Web são compilados em um assembly de biblioteca de classes. Um arquivo chamado 'o arquivo de serviço' é fornecido com a extensão.asmx e contém a diretiva @ WebService que identifica a classe que contém o código para o serviço e o assembly no qual ele está localizado no WCF.