NetNamedPipeBinding Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Proporciona uma ligação segura e fiável, otimizada para comunicação na máquina.
public ref class NetNamedPipeBinding : System::ServiceModel::Channels::Binding, System::ServiceModel::Channels::IBindingRuntimePreferences
public class NetNamedPipeBinding : System.ServiceModel.Channels.Binding, System.ServiceModel.Channels.IBindingRuntimePreferences
type NetNamedPipeBinding = class
inherit Binding
interface IBindingRuntimePreferences
Public Class NetNamedPipeBinding
Inherits Binding
Implements IBindingRuntimePreferences
- Herança
- Implementações
Exemplos
O exemplo seguinte mostra a parte do ficheiro de configuração que contém a secção para os NetNamedPipeBinding com valores definidos como defaults.
O exemplo seguinte mostra como usar programaticamente a NetNamedPipeBinding classe.
[ServiceContract(Namespace = "http://UE.Samples")]
public interface ICalculator
{
[OperationContract]
double Add(double n1, double n2);
}
// Service class which implements the service contract.
public class CalculatorService : ICalculator
{
public double Add(double n1, double n2)
{
return n1 + n2;
}
public static void Main()
{
Uri baseAddress = new Uri("http://localhost:8000/uesamples/service");
string address = "net.pipe://localhost/uesamples/calc";
// Create a ServiceHost for the CalculatorService type and provide the base address.
using (ServiceHost serviceHost = new ServiceHost(typeof(CalculatorService), baseAddress))
{
NetNamedPipeBinding binding = new NetNamedPipeBinding(NetNamedPipeSecurityMode.None);
serviceHost.AddServiceEndpoint(typeof(ICalculator), binding, address);
// Add a mex endpoint
ServiceMetadataBehavior smb = new ServiceMetadataBehavior();
smb.HttpGetEnabled = true;
smb.HttpGetUrl = new Uri("http://localhost:8001/uesamples");
serviceHost.Description.Behaviors.Add(smb);
long maxBufferPoolSize = binding.MaxBufferPoolSize;
int maxBufferSize = binding.MaxBufferSize;
int maxConnections = binding.MaxConnections;
long maxReceivedMessageSize =
binding.MaxReceivedMessageSize;
NetNamedPipeSecurity security = binding.Security;
string scheme = binding.Scheme;
XmlDictionaryReaderQuotas readerQuotas =
binding.ReaderQuotas;
BindingElementCollection bCollection = binding.CreateBindingElements();
HostNameComparisonMode hostNameComparisonMode =
binding.HostNameComparisonMode;
bool TransactionFlow = binding.TransactionFlow;
TransactionProtocol transactionProtocol =
binding.TransactionProtocol;
EnvelopeVersion envelopeVersion =
binding.EnvelopeVersion;
TransferMode transferMode =
binding.TransferMode;
serviceHost.Open();
Console.WriteLine("The service is ready.");
Console.WriteLine("Press <ENTER> to terminate service.");
Console.WriteLine();
Console.ReadLine();
serviceHost.Close();
}
}
static void SnippetReceiveSynchronously ()
{
NetNamedPipeBinding binding = new NetNamedPipeBinding();
IBindingRuntimePreferences s =
binding.GetProperty<IBindingRuntimePreferences>
(new BindingParameterCollection());
bool receiveSynchronously = s.ReceiveSynchronously;
}
}
Observações
Gera NetNamedPipeBinding por defeito uma pilha de comunicação em tempo de execução, que utiliza segurança de transporte, pipelines nomeados para entrega de mensagens e codificação binária de mensagens. Esta ligação é uma escolha adequada fornecida pelo sistema Windows Communication Foundation (WCF) para comunicação na máquina. Também suporta transações.
A configuração padrão para o NetNamedPipeBinding é semelhante à fornecida pelo NetTcpBinding, mas é mais simples porque a implementação WCF destina-se apenas ao uso na máquina e, consequentemente, há menos funcionalidades expostas. A diferença mais notória é que o SecurityMode cenário só oferece as opções de None e e (e Transport que se opções). O suporte de segurança SOAP não é uma opção incluída. O comportamento de segurança é configurável usando o parâmetro opcional securityMode no NetNamedPipeBinding(NetNamedPipeSecurityMode) construtor.
Construtores
| Name | Description |
|---|---|
| NetNamedPipeBinding() |
Inicializa uma nova instância da NetNamedPipeBinding classe. |
| NetNamedPipeBinding(NetNamedPipeSecurityMode) |
Inicializa uma nova instância da NetNamedPipeBinding classe com um modo de segurança especificado. |
| NetNamedPipeBinding(String) |
Inicializa uma nova instância da NetNamedPipeBinding classe com um nome de configuração especificado. |
Propriedades
| Name | Description |
|---|---|
| CloseTimeout |
Obtém ou define o intervalo de tempo fornecido para que uma ligação se feche antes de o transporte levantar uma exceção. (Herdado de Binding) |
| EnvelopeVersion |
Obtém a versão do SOAP usada para mensagens processadas por esta ligação. |
| HostNameComparisonMode |
Recebe ou define um valor que indica se o nome do host é usado para chegar ao serviço ao corresponder ao URI. |
| MaxBufferPoolSize |
Obtém ou define o número máximo de bytes que são usados para armazenar mensagens recebidas na memória. |
| MaxBufferSize |
Obtém ou define o número máximo de bytes usados para armazenar mensagens recebidas na memória. |
| MaxConnections |
Obtém ou define o número máximo de ligações, tanto de entrada como de saída, que são permitidas aos endpoints configurados com a ligação de pipe nomeada. |
| MaxReceivedMessageSize |
Obtém ou define o tamanho máximo, em bytes, para uma mensagem recebida que é processada pela ligação. |
| MessageVersion |
Obtém a versão da mensagem usada por clientes e serviços configurada com a ligação. (Herdado de Binding) |
| Name |
Recebe ou define o nome da ligação. (Herdado de Binding) |
| Namespace |
Obtém ou define o namespace XML do binding. (Herdado de Binding) |
| OpenTimeout |
Obtém ou define o intervalo de tempo fornecido para que uma ligação se abra antes de o transporte levantar uma exceção. (Herdado de Binding) |
| ReaderQuotas |
Obtém ou define restrições sobre a complexidade das mensagens SOAP que podem ser processadas por endpoints configurados com esta ligação. |
| ReceiveTimeout |
Obtém ou define o intervalo de tempo em que uma ligação pode permanecer inativa, durante o qual não são recebidas mensagens de aplicação, antes de ser cortada. (Herdado de Binding) |
| Scheme |
Obtém o esquema de transporte URI para os canais e ouvintes configurados com esta ligação. |
| Security |
Obtém um objeto que especifica o tipo de segurança usada com serviços configurados com esta ligação. |
| SendTimeout |
Obtém ou define o intervalo de tempo fornecido para que uma operação de escrita seja concluída antes de o transporte levantar uma exceção. (Herdado de Binding) |
| TransactionFlow |
Recebe ou define um valor que determina se as transações devem ser transferidas para o serviço. |
| TransactionProtocol |
Obtém ou define o protocolo de transações usado pelo serviço para fluir as transações. |
| TransferMode |
Recebe ou define um valor que indica se o serviço configurado com a ligação utiliza modos de transferência de mensagens em fluxo (numa ou em ambas as direções) ou em buffer. |
Métodos
| Name | Description |
|---|---|
| BuildChannelFactory<TChannel>(BindingParameterCollection) |
Constrói a pilha de channel factory no cliente que cria um tipo específico de canal e que satisfaz as características especificadas por um conjunto de parâmetros de ligação. (Herdado de Binding) |
| BuildChannelFactory<TChannel>(Object[]) |
Constrói a stack de channel factory no cliente que cria um tipo específico de canal e que satisfaz as características especificadas por um array de objetos. (Herdado de Binding) |
| BuildChannelListener<TChannel>(BindingParameterCollection) |
Constrói o ouvinte de canal no serviço que aceita um tipo específico de canal e que satisfaz as características especificadas por um conjunto de parâmetros de ligação. (Herdado de Binding) |
| BuildChannelListener<TChannel>(Object[]) |
Constrói o ouvinte de canal no serviço que aceita um tipo específico de canal e que satisfaz as funcionalidades especificadas. (Herdado de Binding) |
| BuildChannelListener<TChannel>(Uri, BindingParameterCollection) |
Constrói o ouvinte de canal no serviço que aceita um tipo específico de canal e que satisfaz as funcionalidades especificadas. (Herdado de Binding) |
| BuildChannelListener<TChannel>(Uri, Object[]) |
Constrói o ouvinte de canal no serviço que aceita um tipo específico de canal e que satisfaz as funcionalidades especificadas. (Herdado de Binding) |
| BuildChannelListener<TChannel>(Uri, String, BindingParameterCollection) |
Constrói o ouvinte de canal no serviço que aceita um tipo específico de canal e que satisfaz as funcionalidades especificadas. (Herdado de Binding) |
| BuildChannelListener<TChannel>(Uri, String, ListenUriMode, BindingParameterCollection) |
Constrói o ouvinte de canal no serviço que aceita um tipo específico de canal e que satisfaz as funcionalidades especificadas. (Herdado de Binding) |
| BuildChannelListener<TChannel>(Uri, String, ListenUriMode, Object[]) |
Constrói o ouvinte de canal no serviço que aceita um tipo específico de canal e que satisfaz as funcionalidades especificadas. (Herdado de Binding) |
| BuildChannelListener<TChannel>(Uri, String, Object[]) |
Constrói o ouvinte de canal no serviço que aceita um tipo específico de canal e que satisfaz as funcionalidades especificadas. (Herdado de Binding) |
| CanBuildChannelFactory<TChannel>(BindingParameterCollection) |
Devolve um valor que indica se a ligação atual pode construir uma pilha de channel factory no cliente que satisfaz a coleção de parâmetros de ligação especificada. (Herdado de Binding) |
| CanBuildChannelFactory<TChannel>(Object[]) |
Devolve um valor que indica se a ligação atual pode construir uma stack de channel factory no cliente que satisfaz os requisitos especificados por um array de objetos. (Herdado de Binding) |
| CanBuildChannelListener<TChannel>(BindingParameterCollection) |
Devolve um valor que indica se a ligação atual pode construir uma pilha de ouvintes de canal no serviço que satisfaz a coleção de parâmetros de ligação especificada. (Herdado de Binding) |
| CanBuildChannelListener<TChannel>(Object[]) |
Devolve um valor que indica se a ligação atual pode construir uma pilha de ouvintes de canal no serviço que satisfaça os critérios especificados num array de objetos. (Herdado de Binding) |
| CreateBindingElements() |
Cria uma coleção com os elementos de ligação para a ligação. |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetProperty<T>(BindingParameterCollection) |
Devolve um objeto tipado solicitado, se presente, da camada apropriada na pilha de ligação. (Herdado de Binding) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| ShouldSerializeMaxConnections() |
Devolve um valor que indica se a MaxConnections propriedade mudou em relação ao seu valor padrão e deve ser serializada. |
| ShouldSerializeName() |
Devolve se o nome da ligação deve ser serializado. (Herdado de Binding) |
| ShouldSerializeNamespace() |
Devolve se o namespace da ligação deve ser serializado. (Herdado de Binding) |
| ShouldSerializeReaderQuotas() |
Devolve um valor que indica se a ReaderQuotas propriedade mudou em relação ao seu valor padrão e deve ser serializada. Isto é usado pelo WCF para integração XAML. |
| ShouldSerializeSecurity() |
Devolve um valor que indica se a Security propriedade mudou em relação ao seu valor padrão e deve ser serializada. Isto é usado pelo WCF para integração XAML. |
| ShouldSerializeTransactionProtocol() |
Devolve um valor que indica se a TransactionProtocol propriedade mudou em relação ao seu valor padrão e deve ser serializada. Isto é usado pelo WCF para integração XAML. |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |
Implementações de Interface Explícita
| Name | Description |
|---|---|
| IBindingRuntimePreferences.ReceiveSynchronously |
Recebe um valor que indica se os pedidos recebidos são tratados de forma síncrona ou assíncrona. |