RequestContext 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 een antwoord dat is gecorreleerd aan een binnenkomende aanvraag.
public ref class RequestContext abstract : IDisposable
public abstract class RequestContext : IDisposable
type RequestContext = class
interface IDisposable
Public MustInherit Class RequestContext
Implements IDisposable
- Overname
-
RequestContext
- Implementeringen
Opmerkingen
U krijgt een aanvraagcontext van een IReplyChannel. Elke RequestContext inkapselt de informatie die nodig is om de aanvraag te beantwoorden, zodat u niet hoeft te blokkeren in het kanaal wanneer wordt gewacht tot elk aanvraagbericht een antwoord ontvangt.
In het aanvraag-/antwoordmodel is het RequestContext object de koppeling tussen de aanvraag die binnenkomt en het antwoord dat uitgaat. Wanneer de server een aanvraag ontvangt, biedt deze een RequestContext exemplaar dat de aanvraag aan het kanaal vertegenwoordigt. De aanvraagcontext bevat het oorspronkelijke aanvraagbericht en andere nuttige eigenschappen. Deze aanvraagcontext wordt vervolgens opgeslagen in de OperationContext context voor het ophalen door uw service. Doorgaans gebruikt u de Current eigenschap voor toegang tot de aanvraag van de huidige bewerking.
De waarde van de RequestContext waarde kan zijn null. Omdat de rol van de aanvraagcontext bestaat uit het koppelen van aanvragen aan antwoorden, is het niet zinvol om een aanvraagcontext te hebben wanneer u geen antwoord hebt, en in dit geval is de context ingesteld op null. Voor een eenrichtingsbewerking boven op het aanvraag-/antwoordmodel ontvangt de server aanvragen, maar stuurt geen antwoord naar de client. Dus als het RequestContext onverwacht is null , controleert u eerst of het bewerkingscontract IsOneWay is.
Speciale opmerking voor beheerde C++-gebruikers die zijn afgeleid van deze klasse:
- Plaats de opschooncode in (On)(Begin)Close (en/of OnAbort), niet in een destructor.
- Vermijd destructors: ze zorgen ervoor dat de compiler automatisch wordt gegenereerd IDisposable.
- Vermijd niet-referentieleden: ze kunnen ertoe leiden dat de compiler automatisch wordt gegenereerd IDisposable.
- Vermijd finalizers; maar als u er een opneemt, moet u de buildwaarschuwing en -aanroep SuppressFinalize(Object) onderdrukken en de finalizer zelf van (On)(Begin)Close (en/of OnAbort) om te emuleren wat het automatisch gegenereerde IDisposable gedrag zou zijn geweest.
Constructors
| Name | Description |
|---|---|
| RequestContext() |
Initialiseert een nieuw exemplaar van de RequestContext klasse. |
Eigenschappen
| Name | Description |
|---|---|
| RequestMessage |
Wanneer deze wordt overschreven in een afgeleide klasse, haalt u het bericht op dat de aanvraag bevat. |
Methoden
| Name | Description |
|---|---|
| Abort() |
Wanneer deze wordt overschreven in een afgeleide klasse, wordt de aanvraag die aan de context is gekoppeld, afgebroken. |
| BeginReply(Message, AsyncCallback, Object) |
Wanneer deze wordt overschreven in een afgeleide klasse, wordt een asynchrone bewerking gestart om te reageren op de aanvraag die is gekoppeld aan de huidige context. |
| BeginReply(Message, TimeSpan, AsyncCallback, Object) |
Wanneer deze wordt overschreven in een afgeleide klasse, begint een asynchrone bewerking om de aanvraag te beantwoorden die is gekoppeld aan de huidige context binnen een opgegeven tijdsinterval. |
| Close() |
Wanneer deze wordt overschreven in een afgeleide klasse, sluit u de bewerking die reageert op de aanvraagcontext die is gekoppeld aan de huidige context. |
| Close(TimeSpan) |
Wanneer deze wordt overschreven in een afgeleide klasse, sluit u de bewerking die reageert op de aanvraagcontext die is gekoppeld aan de huidige context binnen een opgegeven tijdsinterval. |
| Dispose(Boolean) |
Publiceert resources die zijn gekoppeld aan de context. |
| EndReply(IAsyncResult) |
Wanneer deze wordt overschreven in een afgeleide klasse, voltooit u een asynchrone bewerking om een aanvraagbericht te beantwoorden. |
| Equals(Object) |
Bepaalt of het opgegeven object gelijk is aan het huidige object. (Overgenomen van Object) |
| GetHashCode() |
Fungeert als de standaardhashfunctie. (Overgenomen van Object) |
| 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) |
| Reply(Message, TimeSpan) |
Wanneer het bericht in een afgeleide klasse wordt overschreven, reageert u binnen een bepaald tijdsinterval op een aanvraagbericht. |
| Reply(Message) |
Wanneer deze wordt overschreven in een afgeleide klasse, reageert u op een aanvraagbericht. |
| ToString() |
Retourneert een tekenreeks die het huidige object vertegenwoordigt. (Overgenomen van Object) |
Expliciete interface-implementaties
| Name | Description |
|---|---|
| IDisposable.Dispose() |
Releases zowel beheerde als onbeheerde resources die zijn gekoppeld aan de context. |