WSHttpBindingBase Klasa
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Udostępnia klasę bazową z elementami wspólnymi dla WSHttpBinding elementów i WSFederationHttpBinding.
public ref class WSHttpBindingBase abstract : System::ServiceModel::Channels::Binding
public ref class WSHttpBindingBase abstract : System::ServiceModel::Channels::Binding, System::ServiceModel::Channels::IBindingRuntimePreferences
public abstract class WSHttpBindingBase : System.ServiceModel.Channels.Binding
public abstract class WSHttpBindingBase : System.ServiceModel.Channels.Binding, System.ServiceModel.Channels.IBindingRuntimePreferences
type WSHttpBindingBase = class
inherit Binding
type WSHttpBindingBase = class
inherit Binding
interface IBindingRuntimePreferences
Public MustInherit Class WSHttpBindingBase
Inherits Binding
Public MustInherit Class WSHttpBindingBase
Inherits Binding
Implements IBindingRuntimePreferences
- Dziedziczenie
- Pochodne
- Implementuje
W poniższym przykładzie pokazano, jak używać funkcji udostępnianych przez klasę WSHttpBindingBase z klasami WSHttpBinding pochodnymi i WSFederationHttpBinding.
// Define a service contract for the calculator.
[ServiceContract()]
public interface ICalculator
{
[OperationContract(IsOneWay = false)]
double Add(double n1, double n2);
[OperationContract(IsOneWay = false)]
double Subtract(double n1, double n2);
[OperationContract(IsOneWay = false)]
double Multiply(double n1, double n2);
[OperationContract(IsOneWay = false)]
double Divide(double n1, double n2);
}
// Service class which implements the service contract.
public class CalculatorService : ICalculator
{
public double Add(double n1, double n2)
{
double result = n1 + n2;
return result;
}
public double Subtract(double n1, double n2)
{
double result = n1 - n2;
return result;
}
public double Multiply(double n1, double n2)
{
double result = n1 * n2;
return result;
}
public double Divide(double n1, double n2)
{
double result = n1 / n2;
return result;
}
// Create and configure bindings within this EXE console application.
public static void Main()
{
// Create a WSHttpBinding
WSHttpBinding binding1 = new WSHttpBinding();
binding1.BypassProxyOnLocal = true;
EnvelopeVersion envelopeVersion =
binding1.EnvelopeVersion;
HostNameComparisonMode hostnameComparisonMode =
binding1.HostNameComparisonMode;
long maxBufferPoolSize =
binding1.MaxBufferPoolSize;
long maxReceivedMessageSize =
binding1.MaxReceivedMessageSize;
WSMessageEncoding messageEncoding =
binding1.MessageEncoding;
Uri proxyAddress =
binding1.ProxyAddress;
XmlDictionaryReaderQuotas readerQuotas =
binding1.ReaderQuotas;
OptionalReliableSession reliableSession =
binding1.ReliableSession;
string scheme = binding1.Scheme;
Encoding textEncoding =
binding1.TextEncoding;
bool transactionFlow =
binding1.TransactionFlow;
bool useDefaultWebProxy =
binding1.UseDefaultWebProxy;
BindingElementCollection bindingElements =
binding1.CreateBindingElements();
// Set WSHttpBinding binding property values
binding1.Name = "Binding1";
binding1.HostNameComparisonMode =
HostNameComparisonMode.StrongWildcard;
binding1.Security.Mode = SecurityMode.Message;
binding1.ReliableSession.Enabled = false;
binding1.TransactionFlow = false;
// binding1.Security.Message.DefaultProtectionLevel = System.Net.Security.ProtectionLevel.EncryptAndSign;
// Enumerate properties of the binding1.
Console.WriteLine("WSHttpBinding binding1 properties:");
Console.WriteLine(" - name:\t\t\t{0}", binding1.Name);
Console.WriteLine(" - hostname comparison:\t{0}", binding1.HostNameComparisonMode);
Console.WriteLine(" - security mode:\t\t{0}", binding1.Security.Mode);
Console.WriteLine(" - RM enabled:\t\t{0}", binding1.ReliableSession.Enabled);
Console.WriteLine(" - transaction flow:\t{0}", binding1.TransactionFlow);
//Console.WriteLine(" - message security:\t{0}", binding1.Security.Message.DefaultProtectionLevel);
Console.WriteLine(" - transport scheme:\t{0}", binding1.Scheme);
Console.WriteLine(" - max message size:\t{0}", binding1.MaxReceivedMessageSize);
Console.WriteLine(" - default text encoding:\t{0}", binding1.TextEncoding);
Console.WriteLine();
// Create a WSFederationBinding with a message security mode
// and with a reliable session enabled.
WSFederationHttpBinding binding3 = new WSFederationHttpBinding(WSFederationHttpSecurityMode.Message, true);
// Enumerate properties of the binding2.
Console.WriteLine("WSFederationBinding binding3 properties:");
Console.WriteLine(" - security mode:\t\t{0}", binding3.Security.Mode);
Console.WriteLine(" - RM enabled:\t\t{0}", binding3.ReliableSession.Enabled);
Console.WriteLine();
Console.WriteLine("Press <ENTER> to terminate.");
Console.ReadLine();
}
static void SnippetReceiveSynchronously ()
{
WSHttpBinding binding = new WSHttpBinding();
IBindingRuntimePreferences s =
binding.GetProperty<IBindingRuntimePreferences>
(new BindingParameterCollection());
bool receiveSynchronously = s.ReceiveSynchronously;
}
}
' Define a service contract for the calculator.
<ServiceContract()> _
Public Interface ICalculator
<OperationContract(IsOneWay := False)> _
Function Add(ByVal n1 As Double, ByVal n2 As Double) As Double
<OperationContract(IsOneWay := False)> _
Function Subtract(ByVal n1 As Double, ByVal n2 As Double) As Double
<OperationContract(IsOneWay := False)> _
Function Multiply(ByVal n1 As Double, ByVal n2 As Double) As Double
<OperationContract(IsOneWay := False)> _
Function Divide(ByVal n1 As Double, ByVal n2 As Double) As Double
End Interface
' Service class which implements the service contract.
Public Class CalculatorService
Implements ICalculator
Public Function Add(ByVal n1 As Double, ByVal n2 As Double) As Double Implements ICalculator.Add
Dim result = n1 + n2
Return result
End Function
Public Function Subtract(ByVal n1 As Double, ByVal n2 As Double) As Double Implements ICalculator.Subtract
Dim result = n1 - n2
Return result
End Function
Public Function Multiply(ByVal n1 As Double, ByVal n2 As Double) As Double Implements ICalculator.Multiply
Dim result = n1 * n2
Return result
End Function
Public Function Divide(ByVal n1 As Double, ByVal n2 As Double) As Double Implements ICalculator.Divide
Dim result = n1 / n2
Return result
End Function
' Create and configure bindings within this EXE console application.
Public Shared Sub Main()
' Create a WSHttpBinding
Dim binding1 As New WSHttpBinding()
binding1.BypassProxyOnLocal = True
Dim envelopeVersion As EnvelopeVersion = binding1.EnvelopeVersion
Dim hostnameComparisonMode As HostNameComparisonMode = binding1.HostNameComparisonMode
Dim maxBufferPoolSize = binding1.MaxBufferPoolSize
Dim maxReceivedMessageSize = binding1.MaxReceivedMessageSize
Dim messageEncoding As WSMessageEncoding = binding1.MessageEncoding
Dim proxyAddress As Uri = binding1.ProxyAddress
Dim readerQuotas As XmlDictionaryReaderQuotas = binding1.ReaderQuotas
Dim reliableSession As OptionalReliableSession = binding1.ReliableSession
Dim scheme = binding1.Scheme
Dim textEncoding = binding1.TextEncoding
Dim transactionFlow = binding1.TransactionFlow
Dim useDefaultWebProxy = binding1.UseDefaultWebProxy
Dim bindingElements As BindingElementCollection = binding1.CreateBindingElements()
' Set WSHttpBinding binding property values
binding1.Name = "Binding1"
binding1.HostNameComparisonMode = HostNameComparisonMode.StrongWildcard
binding1.Security.Mode = SecurityMode.Message
binding1.ReliableSession.Enabled = False
binding1.TransactionFlow = False
' binding1.Security.Message.DefaultProtectionLevel = System.Net.Security.ProtectionLevel.EncryptAndSign;
' Enumerate properties of the binding1.
Console.WriteLine("WSHttpBinding binding1 properties:")
Console.WriteLine(" - name:" & Constants.vbTab + Constants.vbTab + Constants.vbTab & "{0}", binding1.Name)
Console.WriteLine(" - hostname comparison:" & Constants.vbTab & "{0}", binding1.HostNameComparisonMode)
Console.WriteLine(" - security mode:" & Constants.vbTab + Constants.vbTab & "{0}", binding1.Security.Mode)
Console.WriteLine(" - RM enabled:" & Constants.vbTab + Constants.vbTab & "{0}", binding1.ReliableSession.Enabled)
Console.WriteLine(" - transaction flow:" & Constants.vbTab & "{0}", binding1.TransactionFlow)
'Console.WriteLine(" - message security:\t{0}", binding1.Security.Message.DefaultProtectionLevel);
Console.WriteLine(" - transport scheme:" & Constants.vbTab & "{0}", binding1.Scheme)
Console.WriteLine(" - max message size:" & Constants.vbTab & "{0}", binding1.MaxReceivedMessageSize)
Console.WriteLine(" - default text encoding:" & Constants.vbTab & "{0}", binding1.TextEncoding)
Console.WriteLine()
' Create a WSFederationBinding with a message security mode
' and with a reliable session enabled.
Dim binding3 As New WSFederationHttpBinding(WSFederationHttpSecurityMode.Message, True)
' Enumerate properties of the binding2.
Console.WriteLine("WSFederationBinding binding3 properties:")
Console.WriteLine(" - security mode:" & Constants.vbTab + Constants.vbTab & "{0}", binding3.Security.Mode)
Console.WriteLine(" - RM enabled:" & Constants.vbTab + Constants.vbTab & "{0}", binding3.ReliableSession.Enabled)
Console.WriteLine()
Console.WriteLine("Press <ENTER> to terminate.")
Console.ReadLine()
End Sub
Private Shared Sub SnippetReceiveSynchronously()
Dim binding As New WSHttpBinding()
Dim s As IBindingRuntimePreferences = binding.GetProperty(Of IBindingRuntimePreferences) (New BindingParameterCollection())
Dim receiveSynchronously = s.ReceiveSynchronously
End Sub
End Class
Zapewnia WSHttpBindingBase kilka podstawowych funkcji powiązań używanych do konfigurowania bezpiecznych, niezawodnych i międzyoperacyjnych usług sieci Web, takich jak zaimplementowane przez WSHttpBinding kontrakty usług innych niż dwudupleksowe, a w szczególności w celu zapewnienia bezpieczeństwa i współdziałania WSFederationHttpBinding obsługującego protokół WS-Federation.
Domyślnie generuje stos czasu wykonywania, który używa WS-Security na potrzeby zabezpieczeń i uwierzytelniania komunikatów, HTTP na potrzeby dostarczania komunikatów i kodowania komunikatów TEKST/XML. Można go również skonfigurować do używania WS-ReliableMessaging pod kątem niezawodności.
Użycie WS-ReliableMessaging można skonfigurować przy użyciu opcjonalnego reliableSessionEnabled
parametru.
WSHttp |
Inicjuje nowe wystąpienie klasy WSHttpBindingBase. |
WSHttp |
Inicjuje WSHttpBindingBase nowe wystąpienie klasy z wartością wskazującą, czy włączono niezawodną sesję. |
Bypass |
Pobiera lub ustawia wartość wskazującą, czy pominąć serwer proxy dla adresów lokalnych. |
Close |
Pobiera lub ustawia interwał czasu podanego dla połączenia do zamknięcia, zanim transport zgłasza wyjątek. (Odziedziczone po Binding) |
Envelope |
Pobiera wersję protokołu SOAP, która jest używana dla komunikatów przetwarzanych przez to powiązanie. |
Host |
Pobiera lub ustawia wartość wskazującą, czy nazwa hosta jest używana do osiągnięcia usługi podczas dopasowywania identyfikatora URI. |
Max |
Pobiera lub ustawia maksymalną ilość pamięci przydzielonej w bajtach dla menedżera buforów, który zarządza buforami wymaganymi przez punkty końcowe przy użyciu tego powiązania. |
Max |
Pobiera lub ustawia maksymalny rozmiar w bajtach dla komunikatu, który może zostać przetworzony przez powiązanie. |
Message |
Pobiera lub ustawia, czy program MTOM, czy tekst/XML jest używany do kodowania komunikatów SOAP. |
Message |
Pobiera wersję komunikatu używaną przez klientów i usługi skonfigurowane za pomocą powiązania. (Odziedziczone po Binding) |
Name |
Pobiera lub ustawia nazwę powiązania. (Odziedziczone po Binding) |
Namespace |
Pobiera lub ustawia przestrzeń nazw XML powiązania. (Odziedziczone po Binding) |
Open |
Pobiera lub ustawia interwał czasu podany dla połączenia do otwarcia, zanim transport zgłosi wyjątek. (Odziedziczone po Binding) |
Proxy |
Pobiera lub ustawia adres URI serwera proxy HTTP. |
Reader |
Pobiera lub ustawia ograniczenia złożoności komunikatów PROTOKOŁU SOAP, które mogą być przetwarzane przez punkty końcowe skonfigurowane za pomocą tego powiązania. |
Receive |
Pobiera lub ustawia interwał czasu, przez który połączenie może pozostać nieaktywne, podczas którego nie są odbierane żadne komunikaty aplikacji, zanim zostanie porzucony. (Odziedziczone po Binding) |
Reliable |
Pobiera obiekt, który zapewnia wygodny dostęp do właściwości elementu powiązania niezawodnej sesji, który jest dostępny podczas korzystania z jednego z powiązań dostarczanych przez system. |
Scheme |
Pobiera schemat transportu identyfikatora URI dla kanałów i odbiorników skonfigurowanych za pomocą tego powiązania. |
Send |
Pobiera lub ustawia interwał czasu podany dla operacji zapisu do ukończenia, zanim transport zgłosi wyjątek. (Odziedziczone po Binding) |
Text |
Pobiera lub ustawia kodowanie znaków używane dla tekstu wiadomości. |
Transaction |
Pobiera lub ustawia wartość wskazującą, czy to powiązanie powinno obsługiwać przepływ operacji WS-Transactions. |
Use |
Pobiera lub ustawia wartość wskazującą, czy używany jest automatycznie skonfigurowany serwer proxy HTTP systemu, jeśli jest dostępny. |
Build |
Tworzy stos fabryki kanałów na kliencie, który tworzy określony typ kanału i spełnia funkcje określone przez kolekcję parametrów powiązania. (Odziedziczone po Binding) |
Build |
Tworzy stos fabryki kanałów na kliencie, który tworzy określony typ kanału i spełnia funkcje określone przez tablicę obiektów. (Odziedziczone po Binding) |
Build |
Tworzy odbiornik kanału w usłudze, który akceptuje określony typ kanału i spełnia funkcje określone przez kolekcję parametrów powiązania. (Odziedziczone po Binding) |
Build |
Tworzy odbiornik kanału w usłudze, który akceptuje określony typ kanału i spełnia określone funkcje. (Odziedziczone po Binding) |
Build |
Tworzy odbiornik kanału w usłudze, który akceptuje określony typ kanału i spełnia określone funkcje. (Odziedziczone po Binding) |
Build |
Tworzy odbiornik kanału w usłudze, który akceptuje określony typ kanału i spełnia określone funkcje. (Odziedziczone po Binding) |
Build |
Tworzy odbiornik kanału w usłudze, który akceptuje określony typ kanału i spełnia określone funkcje. (Odziedziczone po Binding) |
Build |
Tworzy odbiornik kanału w usłudze, który akceptuje określony typ kanału i spełnia określone funkcje. (Odziedziczone po Binding) |
Build |
Tworzy odbiornik kanału w usłudze, który akceptuje określony typ kanału i spełnia określone funkcje. (Odziedziczone po Binding) |
Build |
Tworzy odbiornik kanału w usłudze, który akceptuje określony typ kanału i spełnia określone funkcje. (Odziedziczone po Binding) |
Can |
Zwraca wartość wskazującą, czy bieżące powiązanie może utworzyć stos fabryki kanału na kliencie, który spełnia określone parametry powiązania. (Odziedziczone po Binding) |
Can |
Zwraca wartość wskazującą, czy bieżące powiązanie może utworzyć stos fabryki kanałów na kliencie, który spełnia wymagania określone przez tablicę obiektów. (Odziedziczone po Binding) |
Can |
Zwraca wartość wskazującą, czy bieżące powiązanie może utworzyć stos odbiornika kanału w usłudze, która spełnia określone parametry powiązania. (Odziedziczone po Binding) |
Can |
Zwraca wartość wskazującą, czy bieżące powiązanie może utworzyć stos odbiornika kanału w usłudze, która spełnia kryteria określone w tablicy obiektów. (Odziedziczone po Binding) |
Create |
Zwraca uporządkowaną kolekcję elementów powiązania zawartych w bieżącym powiązaniu. |
Create |
Po zaimplementowaniu w klasie pochodnej zwraca wartość SecurityBindingElement z bieżącego powiązania. |
Equals(Object) |
Określa, czy dany obiekt jest taki sam, jak bieżący obiekt. (Odziedziczone po Object) |
Get |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
Get |
Zwraca żądany obiekt typu z odpowiedniej warstwy w stosie powiązań. (Odziedziczone po Binding) |
Get |
Po zaimplementowaniu w klasie pochodnej zwraca element powiązania transportu z bieżącego powiązania. |
Get |
Type Pobiera bieżące wystąpienie. (Odziedziczone po Object) |
Memberwise |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
Should |
Zwraca, czy nazwa powiązania powinna być serializowana. (Odziedziczone po Binding) |
Should |
Zwraca, czy przestrzeń nazw powiązania powinna być serializowana. (Odziedziczone po Binding) |
Should |
Zwraca wartość wskazującą, czy ReaderQuotas właściwość zmieniła się z wartości domyślnej i powinna być serializowana. |
Should |
Zwraca wartość wskazującą, czy ReliableSession właściwość zmieniła się z wartości domyślnej i powinna być serializowana. |
Should |
Zwraca wartość wskazującą, czy TextEncoding właściwość zmieniła się z wartości domyślnej i powinna być serializowana. |
To |
Zwraca ciąg reprezentujący bieżący obiekt. (Odziedziczone po Object) |
IBinding |
Pobiera wartość wskazującą, czy żądania przychodzące są obsługiwane synchronicznie lub asynchronicznie. |
Produkt | Wersje |
---|---|
.NET | 8 (package-provided), 9 (package-provided), 10 (package-provided) |
.NET Framework | 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 2.0 (package-provided) |
Opinia o produkcie .NET
.NET to projekt typu open source. Wybierz link, aby przekazać opinię: