NetNamedPipeBinding 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
시스템 통신에 적합한, 안전하고 신뢰할 수 있는 바인딩을 제공합니다.
public ref class NetNamedPipeBinding : System::ServiceModel::Channels::Binding
public ref class NetNamedPipeBinding : System::ServiceModel::Channels::Binding, System::ServiceModel::Channels::IBindingRuntimePreferences
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public class NetNamedPipeBinding : System.ServiceModel.Channels.Binding
public class NetNamedPipeBinding : System.ServiceModel.Channels.Binding, System.ServiceModel.Channels.IBindingRuntimePreferences
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
type NetNamedPipeBinding = class
inherit Binding
type NetNamedPipeBinding = class
inherit Binding
interface IBindingRuntimePreferences
Public Class NetNamedPipeBinding
Inherits Binding
Public Class NetNamedPipeBinding
Inherits Binding
Implements IBindingRuntimePreferences
- 상속
- 특성
- 구현
예제
다음 예제에서는 기본값이 설정된 NetNamedPipeBinding의 섹션이 들어 있는 구성 파일 일부를 보여 줍니다.
다음 예제에서는 NetNamedPipeBinding 클래스를 프로그래밍 방식으로 사용하는 방법을 보여 줍니다.
[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;
}
}
설명
NetNamedPipeBinding에서는 기본적으로 런타임 통신 스택을 생성하며, 이 스택은 전송 보안, 메시지 배달을 위한 명명된 파이프 및 이진 메시지 인코딩을 사용합니다. 이 바인딩은 시스템 통신을 위한 적절한 WCF(Windows Communication Foundation) 시스템 제공 기능입니다. 트랜잭션도 지원합니다.
NetNamedPipeBinding의 기본 구성은 NetTcpBinding에서 제공하는 구성과 비슷하지만, WCF 구현이 시스템에서만 사용되므로 노출되는 기능이 더 적기 때문에 더 간단합니다. 가장 두드러진 차이점은 SecurityMode 설정에서는 None 및 Transport 옵션만 제공한다는 것입니다. SOAP 보안 지원은 포함된 옵션이 아닙니다. 보안 동작은 securityMode
생성자에서 선택적 NetNamedPipeBinding(NetNamedPipeSecurityMode) 매개 변수를 사용하여 구성할 수 있습니다.
생성자
NetNamedPipeBinding() |
NetNamedPipeBinding 클래스의 새 인스턴스를 초기화합니다. |
NetNamedPipeBinding(NetNamedPipeSecurityMode) |
지정된 보안 모드를 사용하여 NetNamedPipeBinding 클래스의 새 인스턴스를 초기화합니다. |
NetNamedPipeBinding(String) |
지정된 구성 이름을 사용하여 NetNamedPipeBinding 클래스의 새 인스턴스를 초기화합니다. |
속성
CloseTimeout |
전송 중 예외가 발생하기 전에 연결을 끊기 위해 제공되는 시간 간격을 가져오거나 설정합니다. (다음에서 상속됨 Binding) |
EnvelopeVersion |
이 바인딩에서 처리한 메시지에 사용되는 SOAP의 버전을 가져옵니다. |
HostNameComparisonMode |
URI 비교 시 서비스에 액세스하는 데 호스트 이름이 사용되는지 여부를 나타내는 값을 가져오거나 설정합니다. |
MaxBufferPoolSize |
메모리에서 들어오는 메시지를 버퍼링하는 데 사용되는 최대 바이트 수를 가져오거나 설정합니다. |
MaxBufferSize |
메모리에서 들어오는 메시지를 버퍼링하는 데 사용되는 최대 바이트 수를 가져오거나 설정합니다. |
MaxConnections |
명명된 파이프 바인딩으로 구성된 엔드포인트에서 허용되는 최대 인바운드 및 아웃바운드 연결 수를 가져오거나 설정합니다. |
MaxReceivedMessageSize |
이 바인딩에서 처리하는 받은 메시지의 최대 크기(바이트)를 가져오거나 설정합니다. |
MessageVersion |
바인딩을 사용하여 구성된 클라이언트 및 서비스에서 사용하는 메시지 버전을 가져옵니다. (다음에서 상속됨 Binding) |
Name |
바인딩의 이름을 가져오거나 설정합니다. (다음에서 상속됨 Binding) |
Namespace |
바인딩의 XML 네임스페이스를 가져오거나 설정합니다. (다음에서 상속됨 Binding) |
OpenTimeout |
전송 중에 예외가 발생하기 전에 연결을 설정하기 위해 제공되는 시간 간격을 가져오거나 설정합니다. (다음에서 상속됨 Binding) |
ReaderQuotas |
이 바인딩으로 구성된 엔드포인트에서 처리할 수 있는 SOAP 메시지의 복잡성에 대한 제약 조건을 가져오거나 설정합니다. |
ReceiveTimeout |
연결이 끊어지기 전에 애플리케이션 메시지가 수신되지 않는 비활성 상태로 유지될 수 있는 시간 간격을 가져오거나 설정합니다. (다음에서 상속됨 Binding) |
Scheme |
이 바인딩으로 구성되는 채널과 수신기의 URI 전송 체계를 가져옵니다. |
Security |
이 바인딩으로 구성된 서비스에서 사용하는 보안 형식을 지정하는 개체를 가져옵니다. |
SendTimeout |
전송 중 예외가 발생하기 전에 쓰기 작업을 완료하기 위해 제공되는 시간 간격을 가져오거나 설정합니다. (다음에서 상속됨 Binding) |
TransactionFlow |
트랜잭션이 서비스로 이동해야 하는지 여부를 결정하는 값을 가져오거나 설정합니다. |
TransactionProtocol |
서비스에서 트랜잭션을 이동하는 데 사용하는 트랜잭션 프로토콜을 가져오거나 설정합니다. |
TransferMode |
바인딩으로 구성된 서비스가 메시지 전송에 스트리밍 모드(단방향 또는 양방향)를 사용할지 버퍼링 모드를 사용할지를 나타내는 값을 가져오거나 설정합니다. |
메서드
BuildChannelFactory<TChannel>(BindingParameterCollection) |
지정된 유형의 채널을 만들고 바인딩 매개 변수 컬렉션에서 지정된 기능을 충족하는 채널 팩터리 스택을 클라이언트에 생성합니다. (다음에서 상속됨 Binding) |
BuildChannelFactory<TChannel>(Object[]) |
지정된 유형의 채널을 만들고 개체 배열에서 지정된 기능을 충족하는 채널 팩터리 스택을 클라이언트에 생성합니다. (다음에서 상속됨 Binding) |
BuildChannelListener<TChannel>(BindingParameterCollection) |
지정된 유형의 채널을 허용하고 바인딩 매개 변수 컬렉션에서 지정된 기능을 충족하는 채널 수신기를 서비스에 생성합니다. (다음에서 상속됨 Binding) |
BuildChannelListener<TChannel>(Object[]) |
지정된 유형의 채널을 허용하고 지정된 기능을 충족하는 채널 수신기를 서비스에 생성합니다. (다음에서 상속됨 Binding) |
BuildChannelListener<TChannel>(Uri, BindingParameterCollection) |
지정된 유형의 채널을 허용하고 지정된 기능을 충족하는 채널 수신기를 서비스에 생성합니다. (다음에서 상속됨 Binding) |
BuildChannelListener<TChannel>(Uri, Object[]) |
지정된 유형의 채널을 허용하고 지정된 기능을 충족하는 채널 수신기를 서비스에 생성합니다. (다음에서 상속됨 Binding) |
BuildChannelListener<TChannel>(Uri, String, BindingParameterCollection) |
지정된 유형의 채널을 허용하고 지정된 기능을 충족하는 채널 수신기를 서비스에 생성합니다. (다음에서 상속됨 Binding) |
BuildChannelListener<TChannel>(Uri, String, ListenUriMode, BindingParameterCollection) |
지정된 유형의 채널을 허용하고 지정된 기능을 충족하는 채널 수신기를 서비스에 생성합니다. (다음에서 상속됨 Binding) |
BuildChannelListener<TChannel>(Uri, String, ListenUriMode, Object[]) |
지정된 유형의 채널을 허용하고 지정된 기능을 충족하는 채널 수신기를 서비스에 생성합니다. (다음에서 상속됨 Binding) |
BuildChannelListener<TChannel>(Uri, String, Object[]) |
지정된 유형의 채널을 허용하고 지정된 기능을 충족하는 채널 수신기를 서비스에 생성합니다. (다음에서 상속됨 Binding) |
CanBuildChannelFactory<TChannel>(BindingParameterCollection) |
현재 바인딩이 지정된 바인딩 매개 변수 컬렉션을 충족하는 채널 팩터리 스택을 클라이언트에 생성할 수 있는지 여부를 나타내는 값을 반환합니다. (다음에서 상속됨 Binding) |
CanBuildChannelFactory<TChannel>(Object[]) |
현재 바인딩이 개체 배열에서 지정된 요구 사항을 충족하는 채널 팩터리 스택을 클라이언트에 생성할 수 있는지 여부를 나타내는 값을 반환합니다. (다음에서 상속됨 Binding) |
CanBuildChannelListener<TChannel>(BindingParameterCollection) |
현재 바인딩이 지정된 바인딩 매개 변수 컬렉션을 충족하는 채널 수신기 스택을 서비스에 생성할 수 있는지 여부를 나타내는 값을 반환합니다. (다음에서 상속됨 Binding) |
CanBuildChannelListener<TChannel>(Object[]) |
현재 바인딩이 개체 배열에 지정된 기준을 충족하는 채널 수신기 스택을 서비스에 생성할 수 있는지 여부를 나타내는 값을 반환합니다. (다음에서 상속됨 Binding) |
CreateBindingElements() |
바인딩에 대한 바인딩 요소를 포함하는 컬렉션을 만듭니다. |
Equals(Object) |
지정된 개체가 현재 개체와 같은지 확인합니다. (다음에서 상속됨 Object) |
GetHashCode() |
기본 해시 함수로 작동합니다. (다음에서 상속됨 Object) |
GetProperty<T>(BindingParameterCollection) |
요청한 형식화된 개체가 있으면 바인딩 스택의 해당 계층에서 반환합니다. (다음에서 상속됨 Binding) |
GetType() |
현재 인스턴스의 Type을 가져옵니다. (다음에서 상속됨 Object) |
MemberwiseClone() |
현재 Object의 단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
ShouldSerializeMaxConnections() |
MaxConnections 속성이 기본값에서 변경되었으며 이를 serialize해야 하는지 여부를 나타내는 값을 반환합니다. |
ShouldSerializeName() |
바인딩 이름을 serialize해야 하는지 여부를 반환합니다. (다음에서 상속됨 Binding) |
ShouldSerializeNamespace() |
바인딩 네임스페이스를 serialize해야 하는지 여부를 반환합니다. (다음에서 상속됨 Binding) |
ShouldSerializeReaderQuotas() |
ReaderQuotas 속성이 기본값에서 변경되었으며 이를 serialize해야 하는지 여부를 나타내는 값을 반환합니다. 이 메서드는 WCF에서 XAML 통합에 사용됩니다. |
ShouldSerializeSecurity() |
Security 속성이 기본값에서 변경되었으며 이를 serialize해야 하는지 여부를 나타내는 값을 반환합니다. 이 메서드는 WCF에서 XAML 통합에 사용됩니다. |
ShouldSerializeTransactionProtocol() |
TransactionProtocol 속성이 기본값에서 변경되었으며 이를 serialize해야 하는지 여부를 나타내는 값을 반환합니다. 이 메서드는 WCF에서 XAML 통합에 사용됩니다. |
ToString() |
현재 개체를 나타내는 문자열을 반환합니다. (다음에서 상속됨 Object) |
명시적 인터페이스 구현
IBindingRuntimePreferences.ReceiveSynchronously |
들어오는 요청이 동기적으로 처리되는지 또는 비동기적으로 처리되는지를 나타내는 값을 가져옵니다. |
적용 대상
.NET