WebChannelFactory<TChannel> Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
En klass för åtkomst till Windows Communication Foundation (WCF) webbtjänster på en klient.
generic <typename TChannel>
where TChannel : classpublic ref class WebChannelFactory : System::ServiceModel::ChannelFactory<TChannel>
public class WebChannelFactory<TChannel> : System.ServiceModel.ChannelFactory<TChannel> where TChannel : class
type WebChannelFactory<'Channel (requires 'Channel : null)> = class
inherit ChannelFactory<'Channel (requires 'Channel : null)>
Public Class WebChannelFactory(Of TChannel)
Inherits ChannelFactory(Of TChannel)
Typparametrar
- TChannel
Vilken typ av kanal som ska skapas.
- Arv
Exempel
Följande kod visar hur du WebChannelFactory<TChannel> använder klassen för att anropa en WCF-tjänst.
Uri baseAddress = new Uri("http://localhost:8000");
WebServiceHost host = new WebServiceHost(typeof(Service), baseAddress);
try
{
host.Open();
WebChannelFactory<IService> cf = new WebChannelFactory<IService>(baseAddress);
IService channel = cf.CreateChannel();
string s;
Console.WriteLine("Calling EchoWithGet via HTTP GET: ");
s = channel.EchoWithGet("Hello, world");
Console.WriteLine(" Output: {0}", s);
Console.WriteLine("");
Console.WriteLine("Calling EchoWithPost via HTTP POST: ");
s = channel.EchoWithPost("Hello, world");
Console.WriteLine(" Output: {0}", s);
Console.WriteLine("");
}
catch (CommunicationException ex)
{
Console.WriteLine("An exception occurred: " + ex.Message);
}
Dim baseAddress As New Uri("http://localhost:8000")
Dim host As New WebServiceHost(GetType(Service), baseAddress)
Try
host.Open()
Dim cf As New WebChannelFactory(Of IService)(baseAddress)
Dim channel As IService = cf.CreateChannel()
Dim s As String
Console.WriteLine("Calling EchoWithGet via HTTP GET: ")
s = channel.EchoWithGet("Hello, world")
Console.WriteLine(" Output: 0}", s)
Console.WriteLine("")
Console.WriteLine("Calling EchoWithPost via HTTP POST: ")
s = channel.EchoWithPost("Hello, world")
Console.WriteLine(" Output: 0}", s)
Console.WriteLine("")
Catch ex As CommunicationException
Console.WriteLine("An exception occurred: " + ex.Message)
End Try
Ett fullständigt kodexempel finns i Exempel på grundläggande WCF REST-programmeringsmodell.
Kommentarer
Den här klassen är en special ChannelFactory som automatiskt lägger WebHttpBehavior till i slutpunkten om den inte redan finns. Dessutom lägger den till en standard för WebHttpBinding slutpunkten om bindningen inte har konfigurerats uttryckligen och adressen är en HTTP- eller HTTPS-adress.
Om alla åtgärder i kontraktet inte har något returvärde eller har ett returvärde av typen Streamkonfigurerar WebChannelFactory<TChannel> bindningen för lämplig innehållstyp.
Konstruktorer
| Name | Description |
|---|---|
| WebChannelFactory<TChannel>() |
Initierar en ny instans av WebChannelFactory<TChannel> klassen. |
| WebChannelFactory<TChannel>(Binding, Uri) |
Initierar en ny instans av WebChannelFactory<TChannel> klassen med den angivna bindningen och Uri. |
| WebChannelFactory<TChannel>(Binding) |
Initierar en ny instans av WebChannelFactory<TChannel> klassen. |
| WebChannelFactory<TChannel>(ServiceEndpoint) |
Initierar en ny instans av WebChannelFactory<TChannel> klassen. |
| WebChannelFactory<TChannel>(String, Uri) |
Initierar en ny instans av WebChannelFactory<TChannel> klassen med den angivna slutpunktskonfigurationen och Uri. |
| WebChannelFactory<TChannel>(String) |
Initierar en ny instans av WebChannelFactory<TChannel> klassen. |
| WebChannelFactory<TChannel>(Type) |
Initierar en ny instans av WebChannelFactory<TChannel> klassen. |
| WebChannelFactory<TChannel>(Uri) |
Initierar en ny instans av WebChannelFactory<TChannel> klassen med angiven Uri. |
Egenskaper
| Name | Description |
|---|---|
| Credentials |
Hämtar de autentiseringsuppgifter som används av klienter för att kommunicera en tjänstslutpunkt via de kanaler som produceras av fabriken. (Ärvd från ChannelFactory) |
| DefaultCloseTimeout |
Hämtar standardintervallet för den tid som angetts för att en stängningsåtgärd ska slutföras. (Ärvd från ChannelFactory) |
| DefaultOpenTimeout |
Hämtar standardintervallet för den tid som angetts för att en öppen åtgärd ska slutföras. (Ärvd från ChannelFactory) |
| Endpoint |
Hämtar tjänstslutpunkten som kanalerna som produceras av fabriken ansluter till. (Ärvd från ChannelFactory) |
| IsDisposed |
Hämtar ett värde som anger om kommunikationsobjektet har tagits bort. (Ärvd från CommunicationObject) |
| State |
Hämtar ett värde som anger det aktuella tillståndet för kommunikationsobjektet. (Ärvd från CommunicationObject) |
| ThisLock |
Hämtar det ömsesidigt uteslutande låset som skyddar klassinstansen under en tillståndsövergång. (Ärvd från CommunicationObject) |
Metoder
| Name | Description |
|---|---|
| Abort() |
Gör att ett kommunikationsobjekt omedelbart övergår från dess aktuella tillstånd till det avslutande tillståndet. (Ärvd från CommunicationObject) |
| ApplyConfiguration(String) |
Initierar kanalfabriken med de beteenden som tillhandahålls av en angiven konfigurationsfil och med dem i tjänstslutpunkten för kanalfabriken. (Ärvd från ChannelFactory) |
| BeginClose(AsyncCallback, Object) |
Påbörjar en asynkron åtgärd för att stänga ett kommunikationsobjekt. (Ärvd från CommunicationObject) |
| BeginClose(TimeSpan, AsyncCallback, Object) |
Påbörjar en asynkron åtgärd för att stänga ett kommunikationsobjekt med en angiven tidsgräns. (Ärvd från CommunicationObject) |
| BeginOpen(AsyncCallback, Object) |
Påbörjar en asynkron åtgärd för att öppna ett kommunikationsobjekt. (Ärvd från CommunicationObject) |
| BeginOpen(TimeSpan, AsyncCallback, Object) |
Påbörjar en asynkron åtgärd för att öppna ett kommunikationsobjekt inom ett angivet tidsintervall. (Ärvd från CommunicationObject) |
| Close() |
Gör att ett kommunikationsobjekt övergår från dess aktuella tillstånd till det stängda tillståndet. (Ärvd från CommunicationObject) |
| Close(TimeSpan) |
Gör att ett kommunikationsobjekt övergår från dess aktuella tillstånd till det stängda tillståndet inom ett angivet tidsintervall. (Ärvd från CommunicationObject) |
| CreateChannel() |
Skapar en kanal av en angiven typ till en angiven slutpunktsadress. (Ärvd från ChannelFactory<TChannel>) |
| CreateChannel(EndpointAddress, Uri) |
Skapar en kanal som används för att skicka meddelanden till en tjänst på en specifik slutpunktsadress via en angiven transportadress. (Ärvd från ChannelFactory<TChannel>) |
| CreateChannel(EndpointAddress) |
Skapar en kanal som används för att skicka meddelanden till en tjänst på en specifik slutpunktsadress. (Ärvd från ChannelFactory<TChannel>) |
| CreateChannelWithActAsToken(SecurityToken, EndpointAddress, Uri) |
Skapar en kanal som används för att skicka meddelanden till en tjänst med en åtgärd som säkerhetstoken på en specifik slutpunktsadress via en angiven transportadress. (Ärvd från ChannelFactory<TChannel>) |
| CreateChannelWithActAsToken(SecurityToken, EndpointAddress) |
Skapar en kanal som används för att skicka meddelanden till en tjänst med en åtgärd som säkerhetstoken på en specifik slutpunktsadress. (Ärvd från ChannelFactory<TChannel>) |
| CreateChannelWithActAsToken(SecurityToken) |
Skapar en kanal som används för att skicka meddelanden till en tjänst med en åtgärd som säkerhetstoken. (Ärvd från ChannelFactory<TChannel>) |
| CreateChannelWithIssuedToken(SecurityToken, EndpointAddress, Uri) |
Skapar en kanal som används för att skicka meddelanden till en tjänst med en utfärdad säkerhetstoken på en specifik slutpunktsadress via en angiven transportadress. (Ärvd från ChannelFactory<TChannel>) |
| CreateChannelWithIssuedToken(SecurityToken, EndpointAddress) |
Skapar en kanal som används för att skicka meddelanden till en tjänst med en utfärdad säkerhetstoken på en specifik slutpunktsadress. (Ärvd från ChannelFactory<TChannel>) |
| CreateChannelWithIssuedToken(SecurityToken) |
Skapar en kanal som används för att skicka meddelanden till en tjänst med en utfärdad säkerhetstoken. (Ärvd från ChannelFactory<TChannel>) |
| CreateChannelWithOnBehalfOfToken(SecurityToken, EndpointAddress, Uri) |
Skapar en kanal som används för att skicka meddelanden till en tjänst med en för säkerhetstokens räkning på en specifik slutpunktsadress via en angiven transportadress. (Ärvd från ChannelFactory<TChannel>) |
| CreateChannelWithOnBehalfOfToken(SecurityToken, EndpointAddress) |
Skapar en kanal som används för att skicka meddelanden till en tjänst med en för säkerhetstokens räkning på en specifik slutpunktsadress. (Ärvd från ChannelFactory<TChannel>) |
| CreateChannelWithOnBehalfOfToken(SecurityToken) |
Skapar en kanal som används för att skicka meddelanden till en tjänst med en för säkerhetstokens räkning. (Ärvd från ChannelFactory<TChannel>) |
| CreateDescription() |
Skapar en beskrivning av tjänstslutpunkten. (Ärvd från ChannelFactory<TChannel>) |
| CreateFactory() |
Skapar kanalfabriken för den aktuella slutpunkten för fabriken. (Ärvd från ChannelFactory) |
| EndClose(IAsyncResult) |
Slutför en asynkron åtgärd för att stänga ett kommunikationsobjekt. (Ärvd från CommunicationObject) |
| EndOpen(IAsyncResult) |
Slutför en asynkron åtgärd för att öppna ett kommunikationsobjekt. (Ärvd från CommunicationObject) |
| EnsureOpened() |
Öppnar den aktuella kanalfabriken om den inte har öppnats ännu. (Ärvd från ChannelFactory) |
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| Fault() |
Gör att ett kommunikationsobjekt övergår från dess aktuella tillstånd till det felaktiga tillståndet. (Ärvd från CommunicationObject) |
| GetCommunicationObjectType() |
Hämtar typen av kommunikationsobjekt. (Ärvd från CommunicationObject) |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetProperty<T>() |
Returnerar det typerade objektet som begärs, om det finns, från lämpligt lager i kanalstacken eller |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| InitializeEndpoint(Binding, EndpointAddress) |
Initierar tjänstslutpunkten för kanalfabriken med en angiven bindning och adress. (Ärvd från ChannelFactory) |
| InitializeEndpoint(ServiceEndpoint) |
Initierar tjänstslutpunkten för kanalfabriken med en angiven slutpunkt. (Ärvd från ChannelFactory) |
| InitializeEndpoint(String, EndpointAddress) |
Initierar tjänstslutpunkten för kanalfabriken med en angiven adress och konfiguration. (Ärvd från ChannelFactory) |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| OnAbort() |
Avslutar den inre kanalfabriken för den aktuella kanalfabriken. (Ärvd från ChannelFactory) |
| OnBeginClose(TimeSpan, AsyncCallback, Object) |
Påbörjar en asynkron stängningsåtgärd på den inre kanalfabriken i den aktuella kanalfabriken som har ett tillståndsobjekt associerat med den. (Ärvd från ChannelFactory) |
| OnBeginOpen(TimeSpan, AsyncCallback, Object) |
Påbörjar en asynkron öppen åtgärd på den inre kanalfabriken i den aktuella kanalfabriken som har ett tillståndsobjekt associerat med den. (Ärvd från ChannelFactory) |
| OnClose(TimeSpan) |
Anrop stänger på den inre kanalfabriken med en angiven tidsgräns för slutförandet av åtgärden. (Ärvd från ChannelFactory) |
| OnClosed() |
Anropas under övergången av ett kommunikationsobjekt till stängningstillståndet. (Ärvd från CommunicationObject) |
| OnClosing() |
Anropas under övergången av ett kommunikationsobjekt till stängningstillståndet. (Ärvd från CommunicationObject) |
| OnEndClose(IAsyncResult) |
Slutför en asynkron stängningsåtgärd på den inre kanalfabriken i den aktuella kanalfabriken. (Ärvd från ChannelFactory) |
| OnEndOpen(IAsyncResult) |
Slutför en asynkron öppen åtgärd på den inre kanalfabriken i den aktuella kanalfabriken. (Ärvd från ChannelFactory) |
| OnFaulted() |
Infogar bearbetning av ett kommunikationsobjekt när det övergår till feltillståndet på grund av att en synkron felåtgärd har anropats. (Ärvd från CommunicationObject) |
| OnOpen(TimeSpan) |
Anrop öppnas på den inre kanalfabriken i den aktuella kanalfabriken med en angiven tidsgräns för slutförandet av åtgärden. (Ärvd från ChannelFactory) |
| OnOpened() |
Initierar en skrivskyddad kopia av ClientCredentials objektet för kanalfabriken. (Ärvd från ChannelFactory) |
| OnOpening() |
Den här metoden anropas när öppnas WebChannelFactory<TChannel> . |
| Open() |
Gör att ett kommunikationsobjekt övergår från det skapade tillståndet till det öppnade tillståndet. (Ärvd från CommunicationObject) |
| Open(TimeSpan) |
Gör att ett kommunikationsobjekt övergår från det skapade tillståndet till det öppna tillståndet inom ett angivet tidsintervall. (Ärvd från CommunicationObject) |
| ThrowIfDisposed() |
Utlöser ett undantag om kommunikationsobjektet tas bort. (Ärvd från CommunicationObject) |
| ThrowIfDisposedOrImmutable() |
Utlöser ett undantag om kommunikationsobjektet State som egenskapen inte är inställd på tillståndet Created . (Ärvd från CommunicationObject) |
| ThrowIfDisposedOrNotOpen() |
Utlöser ett undantag om kommunikationsobjektet inte är i tillståndet Opened . (Ärvd från CommunicationObject) |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |
Händelser
| Name | Description |
|---|---|
| Closed |
Inträffar när ett kommunikationsobjekt övergår till stängt tillstånd. (Ärvd från CommunicationObject) |
| Closing |
Inträffar när ett kommunikationsobjekt övergår till det avslutande tillståndet. (Ärvd från CommunicationObject) |
| Faulted |
Inträffar när ett kommunikationsobjekt övergår till feltillståndet. (Ärvd från CommunicationObject) |
| Opened |
Inträffar när ett kommunikationsobjekt övergår till öppet tillstånd. (Ärvd från CommunicationObject) |
| Opening |
Inträffar när ett kommunikationsobjekt övergår till öppningstillståndet. (Ärvd från CommunicationObject) |
Explicita gränssnittsimplementeringar
| Name | Description |
|---|---|
| IDisposable.Dispose() |
Stänger den aktuella kanalfabriken. (Ärvd från ChannelFactory) |