NetNamedPipeBinding Classe

Definição

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
NetNamedPipeBinding
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.

Aplica-se a