ChannelBase Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Biedt de basis-implementatie voor aangepaste kanalen.
public ref class ChannelBase abstract : System::ServiceModel::Channels::CommunicationObject, System::ServiceModel::Channels::IChannel, System::ServiceModel::IDefaultCommunicationTimeouts
public abstract class ChannelBase : System.ServiceModel.Channels.CommunicationObject, System.ServiceModel.Channels.IChannel, System.ServiceModel.IDefaultCommunicationTimeouts
type ChannelBase = class
inherit CommunicationObject
interface IChannel
interface ICommunicationObject
interface IDefaultCommunicationTimeouts
Public MustInherit Class ChannelBase
Inherits CommunicationObject
Implements IChannel, IDefaultCommunicationTimeouts
- Overname
- Implementeringen
Opmerkingen
Important
Het aanroepen van methoden uit deze klasse met niet-vertrouwde gegevens is een beveiligingsrisico. Roep de methoden van deze klasse alleen aan met vertrouwde gegevens. Zie Alle invoergegevens validerenvoor meer informatie.
De ChannelBase klasse biedt een abstracte basisklasse-implementatie van de IChannel interface. Het vereist ook dat elk kanaal wordt gekoppeld aan een channel manager. Houd er rekening mee dat de enige constructor die beschikbaar is voor het maken van exemplaren van ChannelBase een channelManager invoerparameter vereist.
Statuswijzigingen worden beheerd door overname van de CommunicationObject implementatie van de statusmachine.
De ChannelBase standaardtime-outs voor communicatie worden opgehaald voor de bewerkingen voor openen, sluiten, verzenden en ontvangen van de ChannelManagerBase bijbehorende bewerkingen.
De ChannelBase manager wordt ook voor u beheerd. Naast het blootstellen van een verwijzing naar de manager, geeft de basisklasse de manager ook een bericht wanneer kanalen worden gemaakt en vernietigd. Maar de verwijzing naar de manager is alleen goed totdat het kanaal wordt vernietigd.
Zelfs als u de basisklasse gebruikt, moet u nog steeds gedrag opgeven voor het openen en sluiten van het kanaal. De standaard implementaties van deze methoden bieden geen nuttige informatie.
U moet er ook voor zorgen dat u overschrijft GetProperty wanneer u een kanaal implementeert.
GetProperty is een uitstekende manier om informatie over de kanaalstack te communiceren zonder dat u hoeft te weten welke kanalen er onder u staan of welke kanalen hierboven u query's kunt uitvoeren. Definieer interfaces waarop query's kunnen worden uitgevoerd voor beschikbare informatie. Wanneer u het typeargument niet GetPropertyherkent, delegeert u het volgende kanaal in de stack of keert u terug null als u onderaan de stack een nieuw transportkanaal maakt.
Constructors
| Name | Description |
|---|---|
| ChannelBase(ChannelManagerBase) |
Initialiseert een nieuw exemplaar van de ChannelBase klasse. |
Eigenschappen
| Name | Description |
|---|---|
| DefaultCloseTimeout |
Hiermee wordt het standaardinterval van de tijd opgegeven voor een sluitingsbewerking voltooid. |
| DefaultOpenTimeout |
Hiermee haalt u het standaardinterval van de tijd op dat een geopende bewerking moet worden voltooid. |
| DefaultReceiveTimeout |
Hiermee haalt u het standaardinterval van de tijd op dat een ontvangstbewerking moet worden voltooid. |
| DefaultSendTimeout |
Hiermee haalt u het standaardinterval van de tijd op dat een verzendbewerking moet worden voltooid. |
| IsDisposed |
Hiermee wordt een waarde opgehaald die aangeeft of het communicatieobject is verwijderd. (Overgenomen van CommunicationObject) |
| Manager |
Hiermee haalt u de kanaalbeheerder op die is gekoppeld aan het huidige kanaal. |
| State |
Hiermee wordt een waarde opgehaald die de huidige status van het communicatieobject aangeeft. (Overgenomen van CommunicationObject) |
| ThisLock |
Hiermee haalt u de wederzijds exclusieve vergrendeling op die het klasse-exemplaar beschermt tijdens een statusovergang. (Overgenomen van CommunicationObject) |
Methoden
| Name | Description |
|---|---|
| Abort() |
Zorgt ervoor dat een communicatieobject onmiddellijk van de huidige status overgaat naar de slotstatus. (Overgenomen van CommunicationObject) |
| BeginClose(AsyncCallback, Object) |
Hiermee wordt een asynchrone bewerking gestart om een communicatieobject te sluiten. (Overgenomen van CommunicationObject) |
| BeginClose(TimeSpan, AsyncCallback, Object) |
Hiermee wordt een asynchrone bewerking gestart om een communicatieobject met een opgegeven time-out te sluiten. (Overgenomen van CommunicationObject) |
| BeginOpen(AsyncCallback, Object) |
Begint een asynchrone bewerking om een communicatieobject te openen. (Overgenomen van CommunicationObject) |
| BeginOpen(TimeSpan, AsyncCallback, Object) |
Begint een asynchrone bewerking om een communicatieobject binnen een opgegeven tijdsinterval te openen. (Overgenomen van CommunicationObject) |
| Close() |
Zorgt ervoor dat een communicatieobject van de huidige status overgaat naar de gesloten status. (Overgenomen van CommunicationObject) |
| Close(TimeSpan) |
Zorgt ervoor dat een communicatieobject binnen een opgegeven tijdsinterval van de huidige status overgaat naar de gesloten status. (Overgenomen van CommunicationObject) |
| EndClose(IAsyncResult) |
Hiermee voltooit u een asynchrone bewerking om een communicatieobject te sluiten. (Overgenomen van CommunicationObject) |
| EndOpen(IAsyncResult) |
Voltooit een asynchrone bewerking om een communicatieobject te openen. (Overgenomen van CommunicationObject) |
| Equals(Object) |
Bepaalt of het opgegeven object gelijk is aan het huidige object. (Overgenomen van Object) |
| Fault() |
Zorgt ervoor dat een communicatieobject wordt overgezet van de huidige status naar de foutieve status. (Overgenomen van CommunicationObject) |
| GetCommunicationObjectType() |
Hiermee wordt het type communicatieobject opgehaald. (Overgenomen van CommunicationObject) |
| GetHashCode() |
Fungeert als de standaardhashfunctie. (Overgenomen van Object) |
| GetProperty<T>() |
Retourneert het aangevraagde getypte object, indien aanwezig, van de juiste laag in de kanaalstack. |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| OnAbort() |
Hiermee wordt de verwerking van een communicatieobject ingevoegd nadat het is overgeschakeld naar de eindstatus als gevolg van de aanroep van een synchrone abort-bewerking. (Overgenomen van CommunicationObject) |
| OnBeginClose(TimeSpan, AsyncCallback, Object) |
Hiermee wordt de verwerking ingevoegd nadat een communicatieobject is overgestapt op de slotstatus vanwege de aanroep van een asynchrone sluitingsbewerking. (Overgenomen van CommunicationObject) |
| OnBeginOpen(TimeSpan, AsyncCallback, Object) |
Hiermee wordt de verwerking van een communicatieobject ingevoegd nadat het is overgestapt op de openingsstatus vanwege de aanroep van een asynchrone open bewerking. (Overgenomen van CommunicationObject) |
| OnClose(TimeSpan) |
Hiermee wordt de verwerking van een communicatieobject ingevoegd nadat het is overgeschakeld naar de eindstatus vanwege de aanroep van een synchrone sluitingsbewerking. (Overgenomen van CommunicationObject) |
| OnClosed() |
Maakt gebruik van diagnostische tracering tijdens de overgang naar de afsluitstatus. |
| OnClosing() |
Aangeroepen tijdens de overgang van een communicatieobject in de slotstatus. (Overgenomen van CommunicationObject) |
| OnEndClose(IAsyncResult) |
Hiermee voltooit u een asynchrone bewerking bij het sluiten van een communicatieobject. (Overgenomen van CommunicationObject) |
| OnEndOpen(IAsyncResult) |
Hiermee wordt een asynchrone bewerking voltooid op het openen van een communicatieobject. (Overgenomen van CommunicationObject) |
| OnFaulted() |
Hiermee wordt de verwerking van een communicatieobject ingevoegd nadat het is overgeschakeld naar de status Met fouten als gevolg van de aanroep van een synchrone foutbewerking. (Overgenomen van CommunicationObject) |
| OnOpen(TimeSpan) |
Hiermee wordt de verwerking van een communicatieobject ingevoegd nadat het is overgegaan naar de openingsstatus die binnen een opgegeven tijdsinterval moet worden voltooid. (Overgenomen van CommunicationObject) |
| OnOpened() |
Aangeroepen tijdens de overgang van een communicatieobject in de geopende status. (Overgenomen van CommunicationObject) |
| OnOpening() |
Aangeroepen tijdens de overgang van een communicatieobject in de openingsstatus. (Overgenomen van CommunicationObject) |
| Open() |
Zorgt ervoor dat een communicatieobject wordt overgezet van de gemaakte status in de geopende status. (Overgenomen van CommunicationObject) |
| Open(TimeSpan) |
Zorgt ervoor dat een communicatieobject binnen een opgegeven tijdsinterval van de gemaakte status overgaat naar de geopende status. (Overgenomen van CommunicationObject) |
| ThrowIfDisposed() |
Genereert een uitzondering als het communicatieobject wordt verwijderd. (Overgenomen van CommunicationObject) |
| ThrowIfDisposedOrImmutable() |
Genereert een uitzondering als het communicatieobject de State eigenschap niet is ingesteld op de Created status. (Overgenomen van CommunicationObject) |
| ThrowIfDisposedOrNotOpen() |
Genereert een uitzondering als het communicatieobject niet de Opened status heeft. (Overgenomen van CommunicationObject) |
| ToString() |
Retourneert een tekenreeks die het huidige object vertegenwoordigt. (Overgenomen van Object) |
gebeurtenis
| Name | Description |
|---|---|
| Closed |
Treedt op wanneer een communicatieobject overgaat naar de gesloten status. (Overgenomen van CommunicationObject) |
| Closing |
Treedt op wanneer een communicatieobject overgaat naar de slotstatus. (Overgenomen van CommunicationObject) |
| Faulted |
Treedt op wanneer een communicatieobject overgaat naar de foutieve status. (Overgenomen van CommunicationObject) |
| Opened |
Treedt op wanneer een communicatieobject overgaat naar de geopende status. (Overgenomen van CommunicationObject) |
| Opening |
Treedt op wanneer een communicatieobject overgaat naar de openingsstatus. (Overgenomen van CommunicationObject) |
Expliciete interface-implementaties
| Name | Description |
|---|---|
| IDefaultCommunicationTimeouts.CloseTimeout |
Hiermee haalt u het tijdsinterval op waarna er een time-out optreedt voor de sluitmethode die wordt aangeroepen door een communicatieobject. |
| IDefaultCommunicationTimeouts.OpenTimeout |
Hiermee haalt u het tijdsinterval op waarna de open methode, die wordt aangeroepen door een communicatieobject, een time-out optreedt. |
| IDefaultCommunicationTimeouts.ReceiveTimeout |
Hiermee wordt het tijdsinterval opgehaald waarna de ontvangstmethode, die wordt aangeroepen door een communicatieobject, een time-out optreedt. |
| IDefaultCommunicationTimeouts.SendTimeout |
Hiermee wordt het tijdsinterval opgehaald waarna er een time-out optreedt voor de verzendmethode die wordt aangeroepen door een communicatieobject. |