RequestContext Classe

Definizione

Fornisce una replica correlata a una richiesta in arrivo.Provides a reply that is correlated to an incoming request.

public ref class RequestContext abstract : IDisposable
public abstract class RequestContext : IDisposable
type RequestContext = class
    interface IDisposable
Public MustInherit Class RequestContext
Implements IDisposable
Ereditarietà
RequestContext
Implementazioni

Commenti

Consente di ottenere un contesto di richiesta da un'interfaccia IReplyChannel.You get a request context from an IReplyChannel. Ogni oggetto RequestContext incapsula le informazioni necessarie per rispondere alla richiesta, in modo tale che non sia necessario bloccarsi sul canale nell'attesa di una replica a ogni messaggio di richiesta.Each RequestContext encapsulates the information required to reply to the request, so that you do not have to block on the channel when waiting for each request message to receive a reply.

Nel modello di richiesta/replica, l'oggetto RequestContext rappresenta il collegamento tra la richiesta in arrivo e la replica in uscita. Quando il server riceve una richiesta, fornisce un'istanza RequestContext che rappresenta la richiesta al canale.In the request/reply model, the RequestContext object is the link between the request that comes in and the reply that goes out. When the server receives a request, it provides a RequestContext instance that represents the request to the channel. Il contesto della richiesta contiene il messaggio di richiesta originale e altre proprietà utili.The request context contains the original request message among other useful properties. Questo contesto della richiesta viene quindi collocato nella classe OperationContext per essere recuperato dal servizio.This request context is then stashed inside the OperationContext for retrieval by your service. Per accedere alla richiesta dell'operazione corrente si utilizza in genere la proprietà Current.You typically use the Current property to access the request of the current operation.

Il valore della classe RequestContext può essere null.The value of the RequestContext can be null. Poiché il ruolo del contesto della richiesta è quello di collegare le richieste alle repliche, non ha senso disporre di un contesto della richiesta quando non si dispone di una replica, pertanto in questo caso il contesto viene impostato su null.Because the role of the request context is to link requests to replies, it does not make sense to have a request context when you do not have a reply, and so in this case the context is set to null. Per un'operazione unidirezionale all'interno del modello di richiesta/replica, il server riceve le richieste ma non restituisce una risposta al client.For a one-way operation on top of the request/reply model, the server receives requests but does not send back a response to the client. Pertanto, se il contesto RequestContext è impostato su null, verificare prima se il contratto dell'operazione è di tipo IsOneWay.So if the RequestContext is null unexpectedly, check first whether the operation contract is IsOneWay.

Nota speciale in caso di derivazione da questa classe in C++ gestito:Special note for Managed C++ users deriving from this class:

  • Inserire il codice di pulizia in (On)(Begin)Close (e/o OnAbort), non in un distruttore.Put your cleanup code in (On)(Begin)Close (and/or OnAbort), not in a destructor.

  • Evitare i distruttori: comportano la generazione automatica dell'interfaccia IDisposable da parte del compilatore.Avoid destructors: they cause the compiler to auto-generate IDisposable.

  • Evitare membri di non riferimento: possono comportare la generazione automatica dell'interfaccia IDisposable da parte del compilatore.Avoid non-reference members: they can cause the compiler to auto-generate IDisposable.

  • Evitare i finalizzatori. Se tuttavia si include un finalizzatore, è necessario annullare l'avviso di compilazione e chiamare il metodo SuppressFinalize(Object) e il finalizzatore stesso mediante (On)(Begin)Close (e/o OnAbort) al fine di emulare il comportamento dell'interfaccia IDisposable che sarebbe stata generata automaticamente.Avoid finalizers; but if you include one, you should suppress the build warning and call SuppressFinalize(Object) and the finalizer itself from (On)(Begin)Close (and/or OnAbort) to emulate what would have been the auto-generated IDisposable behavior.

Costruttori

RequestContext()

Inizializza una nuova istanza della classe RequestContext.Initializes a new instance of the RequestContext class.

Proprietà

RequestMessage

Quando sottoposto a override in una classe derivata, ottiene il messaggio che contiene la richiesta.When overridden in a derived class, gets the message that contains the request.

Metodi

Abort()

Quando sottoposto a override in una classe derivata, interrompe l'elaborazione della richiesta associata al contesto.When overridden in a derived class, aborts processing the request associated with the context.

BeginReply(Message, AsyncCallback, Object)

Quando sottoposto a override in una classe derivata, avvia un'operazione asincrona per rispondere alla richiesta associata al contesto corrente.When overridden in a derived class, begins an asynchronous operation to reply to the request associated with the current context.

BeginReply(Message, TimeSpan, AsyncCallback, Object)

Quando sottoposto a override in una classe derivata, avvia un'operazione asincrona per rispondere a una richiesta associata al contesto corrente entro un intervallo di tempo specificato.When overridden in a derived class, begins an asynchronous operation to reply to the request associated with the current context within a specified interval of time.

Close()

Quando sottoposto a override in una classe derivata, termina l'operazione di replica al contesto di richiesta associato al contesto corrente.When overridden in a derived class, closes the operation that is replying to the request context associated with the current context.

Close(TimeSpan)

Quando sottoposto a override in una classe derivata, termina l'operazione di replica al contesto di replica associato al contesto corrente entro un intervallo di tempo specificato.When overridden in a derived class, closes the operation that is replying to the request context associated with the current context within a specified interval of time.

Dispose(Boolean)

Rilascia le risorse associate al contesto.Releases resources associated with the context.

EndReply(IAsyncResult)

Quando sottoposto a override in una classe derivata, completa un'operazione asincrona per rispondere a un messaggio di richiesta.When overridden in a derived class, completes an asynchronous operation to reply to a request message.

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.Determines whether the specified object is equal to the current object.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.Serves as the default hash function.

(Ereditato da Object)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Ereditato da Object)
Reply(Message)

Quando sottoposto a override in una classe derivata, risponde a un messaggio di richiesta.When overridden in a derived class, replies to a request message.

Reply(Message, TimeSpan)

Quando sottoposto a override in una classe derivata, risponde a un messaggio di richiesta entro un intervallo di tempo specificato.When overridden in a derived class, replies to a request message within a specified interval of time.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.Returns a string that represents the current object.

(Ereditato da Object)

Implementazioni dell'interfaccia esplicita

IDisposable.Dispose()

Rilascia sia risorse gestite che non gestite associate al contesto.Releases both managed and unmanaged resources associated with the context.

Si applica a