ReliableSessionBindingElement Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Uç noktalar arasında güvenilir bir oturum için gereken gönderme ve alma kanallarını üretebilen bağlama öğesini temsil eder.
public ref class ReliableSessionBindingElement sealed : System::ServiceModel::Channels::BindingElement
public ref class ReliableSessionBindingElement sealed : System::ServiceModel::Channels::BindingElement, System::ServiceModel::Description::IPolicyExportExtension
public sealed class ReliableSessionBindingElement : System.ServiceModel.Channels.BindingElement
public sealed class ReliableSessionBindingElement : System.ServiceModel.Channels.BindingElement, System.ServiceModel.Description.IPolicyExportExtension
type ReliableSessionBindingElement = class
inherit BindingElement
type ReliableSessionBindingElement = class
inherit BindingElement
interface IPolicyExportExtension
Public NotInheritable Class ReliableSessionBindingElement
Inherits BindingElement
Public NotInheritable Class ReliableSessionBindingElement
Inherits BindingElement
Implements IPolicyExportExtension
- Devralma
- Uygulamalar
Örnekler
ReliableSessionBindingElement herhangi bir özel bağlamaya eklenebilir. Bu işlem aşağıdaki yapılandırma öğeleri kullanılarak yapılır.
<bindings>
<customBinding>
<binding configurationName="ReliabilityHTTP">
<reliableSession/>
</binding>
</customBinding>
</bindings>
Aşağıdaki örnek kod, kodda nasıl kullanılacağını ReliableSessionBindingElement gösterir.
Uri baseAddress = new Uri("http://localhost:8000/servicemodelsamples/service");
// Create a ServiceHost for the CalculatorService type and provide the base address.
using (ServiceHost serviceHost = new ServiceHost(typeof(CalculatorService), baseAddress))
{
// Create a custom binding that contains two binding elements.
ReliableSessionBindingElement reliableSession = new ReliableSessionBindingElement();
reliableSession.Ordered = true;
HttpTransportBindingElement httpTransport = new HttpTransportBindingElement();
httpTransport.AuthenticationScheme = System.Net.AuthenticationSchemes.Anonymous;
httpTransport.HostNameComparisonMode = HostNameComparisonMode.StrongWildcard;
CustomBinding binding = new CustomBinding(reliableSession, httpTransport);
// Add an endpoint using that binding.
serviceHost.AddServiceEndpoint(typeof(ICalculator), binding, "");
// Add a MEX endpoint.
ServiceMetadataBehavior smb = new ServiceMetadataBehavior();
smb.HttpGetEnabled = true;
smb.HttpGetUrl = new Uri("http://localhost:8001/servicemodelsamples");
serviceHost.Description.Behaviors.Add(smb);
// Open the ServiceHostBase to create listeners and start listening for messages.
serviceHost.Open();
// The service can now be accessed.
Console.WriteLine("The service is ready.");
Console.WriteLine("Press <ENTER> to terminate service.");
Console.WriteLine();
Console.ReadLine();
// Close the ServiceHostBase to shutdown the service.
serviceHost.Close();
}
Dim baseAddress As New Uri("http://localhost:8000/servicemodelsamples/service")
' Create a ServiceHost for the CalculatorService type and provide the base address.
Using serviceHost As New ServiceHost(GetType(CalculatorService), baseAddress)
' Create a custom binding that contains two binding elements.
Dim reliableSession As New ReliableSessionBindingElement()
reliableSession.Ordered = True
Dim httpTransport As New HttpTransportBindingElement()
httpTransport.AuthenticationScheme = System.Net.AuthenticationSchemes.Anonymous
httpTransport.HostNameComparisonMode = HostNameComparisonMode.StrongWildcard
Dim binding As New CustomBinding(reliableSession, httpTransport)
' Add an endpoint using that binding.
serviceHost.AddServiceEndpoint(GetType(ICalculator), binding, "")
' Add a MEX endpoint.
Dim smb As New ServiceMetadataBehavior()
smb.HttpGetEnabled = True
smb.HttpGetUrl = New Uri("http://localhost:8001/servicemodelsamples")
serviceHost.Description.Behaviors.Add(smb)
' Open the ServiceHostBase to create listeners and start listening for messages.
serviceHost.Open()
' The service can now be accessed.
Console.WriteLine("The service is ready.")
Console.WriteLine("Press <ENTER> to terminate service.")
Console.WriteLine()
Console.ReadLine()
' Close the ServiceHostBase to shutdown the service.
serviceHost.Close()
End Using
Açıklamalar
Oturumlar sağlar ve isteğe bağlı olarak sıralı ileti teslimi sağlar. Uygulanan bu oturum SOAP ve aktarım aracıları arasında geçiş yapabilir.
Her bağlama öğesi, ileti gönderirken veya alırken bir işleme adımlarını temsil eder. Çalışma zamanında bağlama öğeleri, iletileri göndermek ve almak için gereken giden ve gelen kanal yığınlarını oluşturmak için gerekli olan kanal fabrikalarını ve dinleyicileri oluşturur. , ReliableSessionBindingElement yığında uç noktalar arasında güvenilir bir oturum oluşturabilen ve bu oturumun davranışını yapılandırabilen isteğe bağlı bir katman sağlar.
ReliableSessionBindingElement aşağıdaki tabloda yer alan standart bağlamalarda sağlanır.
Bağlama | Varsayılan |
---|---|
NetTcpBinding | Kapalı |
WSHttpBinding | Kapalı |
WSDualHttpBinding | Açık (gerekli) |
Oluşturucular
ReliableSessionBindingElement() |
ReliableSessionBindingElement sınıfının yeni bir örneğini başlatır. |
ReliableSessionBindingElement(Boolean) |
İleti tesliminin iletilerin ReliableSessionBindingElement gönderilme sırasını koruması gerekip gerekmediğini belirten sınıfının yeni bir örneğini başlatır. |
Özellikler
AcknowledgementInterval |
Fabrika tarafından oluşturulan güvenilir kanallarda ileti kaynağına onay göndermeden önce hedefin bekleyeceği süreyi alır veya ayarlar. |
FlowControlEnabled |
Güvenilir oturumun akış denetimini etkinleştirip etkinleştirmediğini belirten bir değer alır veya ayarlar. |
InactivityTimeout |
Kapatmadan önce hizmetin etkin olmadığı bir zaman aralığı alır veya ayarlar. |
MaxPendingChannels |
Güvenilir oturum sırasında beklemede olabilecek en fazla kanalı alır veya ayarlar. |
MaxRetryCount |
Güvenilir oturum sırasında iletinin aktarılmaya çalışılma sayısı üst sınırını alır veya ayarlar. |
MaxTransferWindowSize |
Gönderme arabelleğinde veya alma arabelleğinde bulunabilecek en fazla sayıda iletiyi alır veya ayarlar. |
Ordered |
İleti tesliminin iletilerin gönderilme sırasını koruması gerekip gerekmediğini belirten bir değer alır veya ayarlar. |
ReliableMessagingVersion |
Bağlama öğesi tarafından belirtilen WS-ReliableMessaging sürümünü alır veya ayarlar. |
Yöntemler
BuildChannelFactory<TChannel>(BindingContext) |
Güvenilir oturumu destekleyen belirtilen türde bir kanal oluşturan bir fabrika döndürür. |
BuildChannelListener<TChannel>(BindingContext) |
Güvenilir oturumu destekleyen belirtilen türde bir kanalı kabul eden bir dinleyici döndürür. |
BuildChannelListener<TChannel>(BindingContext) |
Bağlama bağlamından belirtilen türdeki kanalları kabul etmek için bir kanal dinleyicisi başlatır. (Devralındığı yer: BindingElement) |
CanBuildChannelFactory<TChannel>(BindingContext) |
Kanal fabrikasının güvenilir bir oturumu destekleyebilecek şekilde kanal ve bağlam için oluşturulup oluşturulamayacağını gösteren bir değer döndürür. |
CanBuildChannelListener<TChannel>(BindingContext) |
Güvenilir bir oturumu destekleyebilen kanal ve bağlam için kanal dinleyicisinin oluşturulup oluşturulamayacağını gösteren bir değer döndürür. |
CanBuildChannelListener<TChannel>(BindingContext) |
Bağlama öğesinin belirli bir kanal türü için dinleyici oluşturup oluşturamayacağını gösteren bir değer döndürür. (Devralındığı yer: BindingElement) |
Clone() |
Geçerli güvenilir oturum bağlama öğesinin bir kopyasını oluşturur. |
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetProperty<T>(BindingContext) |
Belirtilen türdeki bir özelliği bağlama bağlamından alır. |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |
Belirtik Arabirim Kullanımları
IPolicyExportExtension.ExportPolicy(MetadataExporter, PolicyConversionContext) |
Güvenilir oturum bağlama öğesinde yer alan bilgileri, uzak uç noktanın güvenilir bir oturumla hizmete erişmesini sağlayan WSDL öğeleriyle eşler. |