O WCF (Windows Communication Foundation) permite que você modifique e estenda os componentes de tempo de execução para controlar e estender com precisão os aplicativos baseados em serviço. Os tópicos desta seção abordam detalhadamente a arquitetura de extensibilidade. Para obter mais informações sobre programação básica, confira Programação básica no WCF.
Nesta seção
Estendendo a camada de modelo de serviço e o ServiceHost
A camada do modelo de serviço é responsável por extrair mensagens de entrada dos canais subjacentes, convertê-las em invocações de método no código do aplicativo e enviar os resultados novamente ao chamador. As extensões de modelo de serviço modificam ou implementam o comportamento de execução ou de comunicação e os recursos que envolvem a funcionalidade do dispatcher, os comportamentos personalizados, a interceptação de mensagens e de parâmetros e outras funcionalidades de extensibilidade.
Estendendo associações
As associações são objetos que descrevem os detalhes de comunicação necessários para se conectar a um ponto de extremidade. As extensões de associação ou as associações personalizadas implementam a funcionalidade de comunicação personalizada necessária para dar suporte aos recursos do aplicativo.
Estendendo a camada do canal
A camada de canal fica abaixo da camada do modelo de serviço e é responsável pela troca de mensagens entre clientes e serviços. As extensões de canais podem implementar novas funcionalidades de protocolo, como segurança. As extensões de canais também transportam funcionalidades, como implementar um novo transporte de rede para transportar mensagens SOAP.
Segurança estendida
A segurança no WCF consiste em segurança de transferência (integridade, confidencialidade e autenticação), controle de acesso (autorização) e auditoria. As classes encontradas no namespace IdentityModel são usadas pelo WCF para controle de acesso. Entender a arquitetura de segurança permite que você crie tipos de declaração personalizados para acomodar sistemas de controle de acesso personalizados.
Estendendo o sistema de metadados
O sistema de metadados do WCF é um grupo de classes e interfaces que representam metadados necessários para implementar aplicativos baseados em serviço. Modifique ou estenda as classes ou implemente e configure as interfaces para exportar e importar metadados personalizados, como extensões da linguagem WSDL ou declarações personalizadas de WS-PolicyAttachments.
Estendendo codificadores e serializadores
Os codificadores e os serializadores convertem dados de um formato para outro. Os tópicos desta seção abordam como estender as classes fornecidas para atender a requisitos especiais.
Os aplicativos de finanças e operações são personalizados por meio de extensões, o que permite adicionar funcionalidade aos elementos de modelo e ao código-fonte na AOT (árvore de objetos de aplicativo) usando o Visual Studio.