BasicHttpBinding Klass

Definition

Representerar en bindning som en WCF-tjänst (Windows Communication Foundation) kan använda för att konfigurera och exponera slutpunkter som kan kommunicera med ASMX-baserade webbtjänster och klienter och andra tjänster som överensstämmer med WS-I Basic Profile 1.1.

public ref class BasicHttpBinding : System::ServiceModel::HttpBindingBase
public ref class BasicHttpBinding : System::ServiceModel::Channels::Binding, System::ServiceModel::Channels::IBindingRuntimePreferences
public class BasicHttpBinding : System.ServiceModel.HttpBindingBase
public class BasicHttpBinding : System.ServiceModel.Channels.Binding, System.ServiceModel.Channels.IBindingRuntimePreferences
type BasicHttpBinding = class
    inherit HttpBindingBase
type BasicHttpBinding = class
    inherit Binding
    interface IBindingRuntimePreferences
Public Class BasicHttpBinding
Inherits HttpBindingBase
Public Class BasicHttpBinding
Inherits Binding
Implements IBindingRuntimePreferences
Arv
BasicHttpBinding
Arv
BasicHttpBinding
Härledda
Implementeringar

Exempel

I följande exempel visas hur du konfigurerar BasicHttpBinding i en programkonfigurationsfil.

I följande exempel visas hur du programmatiskt konfigurerar BasicHttpBinding.

[ServiceContract(Namespace = "http://UE.ServiceModel.Samples")]
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);
}

public class CalculatorService : ICalculator
{
    public double Add(double n1, double n2)
    {
        double result = n1 + n2;
        Console.WriteLine("Received Add({0},{1})", n1, n2);
        Console.WriteLine("Return: {0}", result);
        return result;
    }

    public double Subtract(double n1, double n2)
    {
        double result = n1 - n2;
        Console.WriteLine("Received Subtract({0},{1})", n1, n2);
        Console.WriteLine("Return: {0}", result);
        return result;
    }

    public double Multiply(double n1, double n2)
    {
        double result = n1 * n2;
        Console.WriteLine("Received Multiply({0},{1})", n1, n2);
        Console.WriteLine("Return: {0}", result);
        return result;
    }

    public double Divide(double n1, double n2)
    {
        double result = n1 / n2;
        Console.WriteLine("Received Divide({0},{1})", n1, n2);
        Console.WriteLine("Return: {0}", result);
        return result;
    }

    public static void Main()
    {
        BasicHttpBinding binding = new BasicHttpBinding();
        binding.Name = "binding1";
        binding.HostNameComparisonMode = HostNameComparisonMode.StrongWildcard;
        binding.Security.Mode = BasicHttpSecurityMode.None;

        Uri baseAddress = new Uri("http://localhost:8000/servicemodelsamples/service");
        Uri address = new Uri("http://localhost:8000/servicemodelsamples/service/calc");

        // Create a ServiceHost for the CalculatorService type and provide the base address.
        ServiceHost serviceHost = new ServiceHost(typeof(CalculatorService), baseAddress);

        serviceHost.AddServiceEndpoint(typeof(ICalculator), binding, address);

        // 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();

    }
}
   <ServiceContract(Namespace:="http://UE.ServiceModel.Samples")> _
   Public Interface ICalculator

       <OperationContract()> _
       Function Add(ByVal n1 As Double, ByVal n2 As Double) As Double
       <OperationContract()> _
       Function Subtract(ByVal n1 As Double, ByVal n2 As Double) As Double
       <OperationContract()> _
       Function Multiply(ByVal n1 As Double, ByVal n2 As Double) As Double
       <OperationContract()> _
       Function Divide(ByVal n1 As Double, ByVal n2 As Double) As Double
   End Interface

   ' Service class which implements the service contract.
   ' Added code to write output to the console window
   Public Class CalculatorService
       Implements ICalculator

       Public Function Add(ByVal n1 As Double, ByVal n2 As Double) As Double _
Implements ICalculator.Add

           Dim result As Double = n1 + n2
           Console.WriteLine("Received Add({0},{1})", n1, n2)
           Console.WriteLine("Return: {0}", result)
           Return result
       End Function

       Public Function Subtract(ByVal n1 As Double, ByVal n2 As Double) As Double _
Implements ICalculator.Subtract

           Dim result As Double = n1 - n2
           Console.WriteLine("Received Subtract({0},{1})", n1, n2)
           Console.WriteLine("Return: {0}", result)
           Return result
       End Function

       Public Function Multiply(ByVal n1 As Double, ByVal n2 As Double) As Double _
Implements ICalculator.Multiply

           Dim result As Double = n1 * n2
           Console.WriteLine("Received Multiply({0},{1})", n1, n2)
           Console.WriteLine("Return: {0}", result)
           Return result
       End Function

       Public Function Divide(ByVal n1 As Double, ByVal n2 As Double) As Double _
Implements ICalculator.Divide

           Dim result As Double = n1 / n2
           Console.WriteLine("Received Divide({0},{1})", n1, n2)
           Console.WriteLine("Return: {0}", result)
           Return result
       End Function

       Public Shared Sub Main()
           Dim binding As BasicHttpBinding = New BasicHttpBinding()
           binding.Name = "binding1"
           binding.HostNameComparisonMode = HostNameComparisonMode.StrongWildcard
           binding.Security.Mode = BasicHttpSecurityMode.None

           Dim baseAddress As Uri = New Uri("http://localhost:8000/servicemodelsamples/service")
           Dim address As Uri = New Uri("http://localhost:8000/servicemodelsamples/service/calc")

           ' Create a ServiceHost for the CalculatorService type and provide the base address.
           Using serviceHost As ServiceHost = New ServiceHost(GetType(CalculatorService), baseAddress)

               serviceHost.AddServiceEndpoint(GetType(ICalculator), binding, address)

               ' Open the ServiceHost 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 ServiceHost to shutdown the service.
               serviceHost.Close()
           End Using
       End Sub
   End Class

Kommentarer

BasicHttpBinding Använder HTTP som transport för att skicka SOAP 1.1-meddelanden. En tjänst kan använda den här bindningen för att exponera slutpunkter som överensstämmer med WS-I BP 1.1, till exempel de som ASMX-klienter har åtkomst till. På samma sätt kan en klient använda BasicHttpBinding för att kommunicera med tjänster som exponerar slutpunkter som överensstämmer med WS-I BP 1.1, till exempel ASMX-webbtjänster eller Windows Communication Foundation(WCF)-tjänster som konfigurerats med BasicHttpBinding.

Säkerhet är inaktiverat som standard, men kan läggas till om du vill ange BasicHttpSecurityMode ett annat värde än None i BasicHttpBinding(BasicHttpSecurityMode) konstruktorn. Den använder en textkodning och UTF-8-textkodning som standard.

Konstruktorer

Name Description
BasicHttpBinding()

Initierar en ny instans av BasicHttpBinding klassen.

BasicHttpBinding(BasicHttpSecurityMode)

Initierar en ny instans av BasicHttpBinding klassen med en angiven typ av säkerhet som används av bindningen.

BasicHttpBinding(String)

Initierar en ny instans av BasicHttpBinding klassen med en bindning som anges av dess konfigurationsnamn.

Egenskaper

Name Description
AllowCookies

Hämtar eller anger ett värde som anger om klienten accepterar cookies och sprider dem på framtida begäranden.

AllowCookies

Hämtar eller anger ett värde som anger om klienten accepterar cookies och sprider dem på framtida begäranden.

(Ärvd från HttpBindingBase)
BypassProxyOnLocal

Hämtar eller anger ett värde som anger om proxyservern ska kringgås för lokala adresser.

BypassProxyOnLocal

Hämtar eller anger ett värde som anger om proxyservern ska kringgås för lokala adresser.

(Ärvd från HttpBindingBase)
CloseTimeout

Hämtar eller anger tidsintervallet för en anslutning som ska stängas innan transporten skapar ett undantag.

(Ärvd från Binding)
EnableHttpCookieContainer
Föråldrad.

Hämtar eller anger ett värde som anger om HTTP-cookiecontainern är aktiverad.

EnvelopeVersion

Hämtar den version av SOAP som används för meddelanden som bearbetas av den här bindningen.

EnvelopeVersion

Hämtar den version av SOAP som används för meddelanden som bearbetas av den här bindningen.

(Ärvd från HttpBindingBase)
HostNameComparisonMode

Hämtar eller anger ett värde som anger om värdnamnet används för att nå tjänsten när URI:n matchas.

HostNameComparisonMode

Hämtar eller anger ett värde som anger om värdnamnet används för att nå tjänsten när URI:n matchas.

(Ärvd från HttpBindingBase)
MaxBufferPoolSize

Hämtar eller anger den maximala mängden minne, i byte, som allokeras för användning av chefen för de meddelandebuffertar som tar emot meddelanden från kanalen.

MaxBufferPoolSize

Hämtar eller anger den maximala mängden minne, i byte, som allokeras för användning av chefen för de meddelandebuffertar som tar emot meddelanden från kanalen.

(Ärvd från HttpBindingBase)
MaxBufferSize

Hämtar eller anger den maximala storleken i byte för en buffert som tar emot meddelanden från kanalen.

MaxBufferSize

Hämtar eller anger den maximala storleken i byte för en buffert som tar emot meddelanden från kanalen.

(Ärvd från HttpBindingBase)
MaxReceivedMessageSize

Hämtar eller anger den maximala storleken, i byte, för ett meddelande som kan tas emot på en kanal som konfigurerats med den här bindningen.

MaxReceivedMessageSize

Hämtar eller anger den maximala storleken, i byte, för ett meddelande som kan tas emot på en kanal som konfigurerats med den här bindningen.

(Ärvd från HttpBindingBase)
MessageEncoding

Hämtar eller anger om MTOM eller Text används för att koda SOAP-meddelanden.

MessageVersion

Hämtar meddelandeversionen som används av klienter och tjänster som konfigurerats med bindningen.

(Ärvd från Binding)
Name

Hämtar eller anger namnet på bindningen.

(Ärvd från Binding)
Namespace

Hämtar eller anger XML-namnområdet för bindningen.

(Ärvd från Binding)
OpenTimeout

Hämtar eller anger tidsintervallet för en anslutning som ska öppnas innan transporten skapar ett undantag.

(Ärvd från Binding)
ProxyAddress

Hämtar eller anger URI-adressen för HTTP-proxyn.

ProxyAddress

Hämtar eller anger URI-adressen för HTTP-proxyn.

(Ärvd från HttpBindingBase)
ReaderQuotas

Hämtar eller anger begränsningar för komplexiteten i SOAP-meddelanden som kan bearbetas av slutpunkter som konfigurerats med den här bindningen.

ReaderQuotas

Hämtar eller anger begränsningarna för komplexiteten i SOAP-meddelanden som kan bearbetas av slutpunkter som konfigurerats med den här bindningen.

(Ärvd från HttpBindingBase)
ReceiveTimeout

Hämtar eller anger det tidsintervall som en anslutning kan förbli inaktiv under vilken inga programmeddelanden tas emot innan den tas bort.

(Ärvd från Binding)
Scheme

Hämtar URI-transportschemat för de kanaler och lyssnare som har konfigurerats med den här bindningen.

Scheme

Hämtar URI-transportschemat för de kanaler och lyssnare som har konfigurerats med den här bindningen.

(Ärvd från HttpBindingBase)
Security

Hämtar den typ av säkerhet som används med den här bindningen.

SendTimeout

Hämtar eller anger tidsintervallet för en skrivåtgärd som ska slutföras innan transporten genererar ett undantag.

(Ärvd från Binding)
TextEncoding

Hämtar eller anger teckenkodningen som används för meddelandetexten.

TextEncoding

Hämtar eller anger teckenkodningen som används för meddelandetexten.

(Ärvd från HttpBindingBase)
TransferMode

Hämtar eller anger ett värde som anger om meddelanden skickas buffrade eller strömmade.

TransferMode

Hämtar eller anger ett värde som anger om meddelanden skickas buffrade eller strömmade.

(Ärvd från HttpBindingBase)
UseDefaultWebProxy

Hämtar eller anger ett värde som anger om systemets automatiskt konfigurerade HTTP-proxy ska användas, om det är tillgängligt.

UseDefaultWebProxy

Hämtar eller anger ett värde som anger om systemets automatiskt konfigurerade HTTP-proxy ska användas, om det är tillgängligt.

(Ärvd från HttpBindingBase)

Metoder

Name Description
BuildChannelFactory<TChannel>(BindingParameterCollection)

Skapar kanalfabriksstacken på klienten som skapar en angiven typ av kanal och som uppfyller de funktioner som anges av en samling bindningsparametrar.

BuildChannelFactory<TChannel>(BindingParameterCollection)

Skapar kanalfabriksstacken på klienten som skapar en angiven typ av kanal och som uppfyller de funktioner som anges av en samling bindningsparametrar.

(Ärvd från Binding)
BuildChannelFactory<TChannel>(Object[])

Skapar kanalfabriksstacken på klienten som skapar en angiven typ av kanal och som uppfyller de funktioner som anges av en objektmatris.

(Ärvd från Binding)
BuildChannelListener<TChannel>(BindingParameterCollection)

Skapar kanallyssnaren på tjänsten som accepterar en angiven typ av kanal och som uppfyller de funktioner som anges av en samling bindningsparametrar.

(Ärvd från Binding)
BuildChannelListener<TChannel>(Object[])

Skapar kanallyssnaren på tjänsten som accepterar en angiven typ av kanal och som uppfyller de angivna funktionerna.

(Ärvd från Binding)
BuildChannelListener<TChannel>(Uri, BindingParameterCollection)

Skapar kanallyssnaren på tjänsten som accepterar en angiven typ av kanal och som uppfyller de angivna funktionerna.

(Ärvd från Binding)
BuildChannelListener<TChannel>(Uri, Object[])

Skapar kanallyssnaren på tjänsten som accepterar en angiven typ av kanal och som uppfyller de angivna funktionerna.

(Ärvd från Binding)
BuildChannelListener<TChannel>(Uri, String, BindingParameterCollection)

Skapar kanallyssnaren på tjänsten som accepterar en angiven typ av kanal och som uppfyller de angivna funktionerna.

(Ärvd från Binding)
BuildChannelListener<TChannel>(Uri, String, ListenUriMode, BindingParameterCollection)

Skapar kanallyssnaren på tjänsten som accepterar en angiven typ av kanal och som uppfyller de angivna funktionerna.

(Ärvd från Binding)
BuildChannelListener<TChannel>(Uri, String, ListenUriMode, Object[])

Skapar kanallyssnaren på tjänsten som accepterar en angiven typ av kanal och som uppfyller de angivna funktionerna.

(Ärvd från Binding)
BuildChannelListener<TChannel>(Uri, String, Object[])

Skapar kanallyssnaren på tjänsten som accepterar en angiven typ av kanal och som uppfyller de angivna funktionerna.

(Ärvd från Binding)
CanBuildChannelFactory<TChannel>(BindingParameterCollection)

Returnerar ett värde som anger om den aktuella bindningen kan skapa en kanalfabriksstack på klienten som uppfyller samlingen med angivna bindningsparametrar.

(Ärvd från Binding)
CanBuildChannelFactory<TChannel>(Object[])

Returnerar ett värde som anger om den aktuella bindningen kan skapa en kanalfabriksstack på klienten som uppfyller de krav som anges av en objektmatris.

(Ärvd från Binding)
CanBuildChannelListener<TChannel>(BindingParameterCollection)

Returnerar ett värde som anger om den aktuella bindningen kan skapa en kanallyssningsstack på tjänsten som uppfyller den angivna samlingen med bindningsparametrar.

(Ärvd från Binding)
CanBuildChannelListener<TChannel>(Object[])

Returnerar ett värde som anger om den aktuella bindningen kan skapa en kanallyssningsstack på tjänsten som uppfyller de villkor som anges i en matris med objekt.

(Ärvd från Binding)
CreateBindingElements()

Skapar och returnerar en ordnad samling bindningselement som finns i den aktuella bindningen.

Equals(Object)

Avgör om det angivna objektet är lika med det aktuella objektet.

(Ärvd från Object)
GetHashCode()

Fungerar som standard-hash-funktion.

(Ärvd från Object)
GetProperty<T>(BindingParameterCollection)

Returnerar ett typat objekt som begärs, om det finns, från lämpligt lager i bindningsstacken.

(Ärvd från Binding)
GetType()

Hämtar den aktuella instansen Type .

(Ärvd från Object)
MemberwiseClone()

Skapar en ytlig kopia av den aktuella Object.

(Ärvd från Object)
ShouldSerializeEnableHttpCookieContainer()

Anger om http cookie-containern ska aktivera serialiseringen.

ShouldSerializeName()

Returnerar om namnet på bindningen ska serialiseras.

(Ärvd från Binding)
ShouldSerializeNamespace()

Returnerar om bindningens namnområde ska serialiseras.

(Ärvd från Binding)
ShouldSerializeReaderQuotas()

Returnerar om villkorsvärdena som placeras på komplexiteten i SOAP-meddelandestrukturen ska serialiseras.

ShouldSerializeReaderQuotas()

Returnerar om villkorsvärdena som placeras på komplexiteten i SOAP-meddelandestrukturen ska serialiseras.

(Ärvd från HttpBindingBase)
ShouldSerializeSecurity()

Returnerar om säkerhetsinställningarna ska serialiseras baserat på om serialiseringen redan sker, till exempel på meddelande- eller transportnivå.

ShouldSerializeTextEncoding()

Returnerar om inställningarna för textkodning ska serialiseras.

ShouldSerializeTextEncoding()

Returnerar om inställningarna för textkodning ska serialiseras.

(Ärvd från HttpBindingBase)
ToString()

Returnerar en sträng som representerar det aktuella objektet.

(Ärvd från Object)

Explicita gränssnittsimplementeringar

Name Description
IBindingRuntimePreferences.ReceiveSynchronously

Hämtar ett värde som anger om inkommande begäranden hanteras synkront eller asynkront.

IBindingRuntimePreferences.ReceiveSynchronously

Hämtar ett värde som anger om inkommande begäranden hanteras synkront eller asynkront.

(Ärvd från HttpBindingBase)

Gäller för