Estendendo o WCFExtending WCF

O Windows Communication Foundation (WCF) permite que você modifique e estenda os componentes de tempo de execução para controlar e estender precisamente os aplicativos baseados em serviço.Windows Communication Foundation (WCF) allows you to modify and extend run time components to precisely control and extend service-based applications. Os tópicos nesta seção se aprofundam em detalhes sobre a arquitetura de extensibilidade.The topics in this section go in depth about the extensibility architecture. Para obter mais informações sobre programação básica, consulte programação básica do WCF.For more information about basic programming, see Basic WCF Programming.

Nesta seçãoIn This Section

Estendendo ServiceHost e a camada de modelo de serviçoExtending ServiceHost and the Service Model Layer
A camada do modelo de serviço é responsável por extrair mensagens de entrada dos canais subjacentes, traduzi-las em invocações de método no código do aplicativo e enviar os resultados de volta para o chamador.The service model layer is responsible for pulling incoming messages out of the underlying channels, translating them into method invocations in application code, and sending the results back to the caller. As extensões de modelo de serviço modificam ou implementam o comportamento de execução ou de comunicação e recursos que envolvem a funcionalidade do Dispatcher, comportamentos personalizados, interceptação de mensagem e de parâmetro e outras funcionalidades de extensibilidade.Service model extensions modify or implement execution or communication behavior and features involving dispatcher functionality, custom behaviors, message and parameter interception, and other extensibility functionality.

Estendendo associaçõesExtending Bindings
Associações são objetos que descrevem os detalhes de comunicação necessários para se conectar a um ponto de extremidade.Bindings are objects that describe the communication details required to connect to an endpoint. Extensões de associação ou associações personalizadas implementam a funcionalidade de comunicação personalizada necessária para dar suporte aos recursos do aplicativo.Binding extensions or custom bindings implement custom communication functionality required to support application features.

Estendendo a camada do canalExtending the Channel Layer
A camada de canal fica abaixo da camada de modelo de serviço e é responsável pela troca de mensagens entre clientes e serviços.The channel layer sits beneath the service model layer and is responsible for the exchange of messages between clients and services. As extensões de canal podem implementar a nova funcionalidade de protocolo, como segurança.Channel extensions can implement new protocol functionality, such as security. As extensões de canal também transportam a funcionalidade, como a implementação de um novo transporte de rede para transportar mensagens SOAP.Channel extensions also transport functionality, such as implementing a new network transport to carry SOAP messages.

Estendendo a segurançaExtending Security
A segurança no WCF consiste em segurança de transferência (integridade, confidencialidade e autenticação), controle de acesso (autorização) e auditoria.Security in WCF consists of transfer security (integrity, confidentiality, and authentication), access control (authorization) and auditing. As classes encontradas no IdentityModel namespace são usadas pelo WCF para controle de acesso.The classes found in the IdentityModel namespace are used by WCF for access control. Entender a arquitetura de segurança permite que você crie tipos de declaração personalizados para acomodar sistemas de controle de acesso personalizados.Understanding the security architecture allows you to create custom claim types to accommodate custom access control systems.

Estendendo o sistema de metadadosExtending the Metadata System
O sistema de metadados do WCF é um grupo de classes e interfaces que representam os metadados necessários para implementar aplicativos baseados em serviço.The WCF metadata system is a group of classes and interfaces that represent metadata required to implement service-based applications. Modifique ou estenda as classes ou implemente e configure as interfaces para exportar e importar metadados personalizados, como as extensões WSDL (Web Services Description Language) ou as asserções WS-PolicyAttachments personalizadas.Modify or extend the classes or implement and configure the interfaces to export and import custom metadata such as Web Services Description Language (WSDL) extensions or custom WS-PolicyAttachments assertions.

Estendendo codificadores e serializadoresExtending Encoders and Serializers
Codificadores e serializadores convertem dados de um formulário para outro.Encoders and serializers translate data from one form to another. Os tópicos nesta seção discutem como estender as classes fornecidas para atender aos requisitos especiais.The topics in this section discuss how to extend the supplied classes to meet special requirements.

ReferênciaReference

System.ServiceModel

System.ServiceModel.Channels

System.ServiceModel.Description

System.IdentityModel.Claims

System.IdentityModel.Policy

System.IdentityModel.Selectors

System.IdentityModel.Tokens

Programação básica do WCFBasic WCF Programming

Detalhes de recursos do WCFWCF Feature Details

Diretrizes e práticas recomendadasGuidelines and Best Practices