Sdílet prostřednictvím


RequestContext Třída

Definice

Poskytuje odpověď, která koreluje s příchozím požadavkem.

public ref class RequestContext abstract : IDisposable
public abstract class RequestContext : IDisposable
type RequestContext = class
    interface IDisposable
Public MustInherit Class RequestContext
Implements IDisposable
Dědičnost
RequestContext
Implementuje

Poznámky

Kontext požadavku získáte z objektu IReplyChannel. Každý RequestContext z nich zapouzdřuje informace potřebné k odpovědi na žádost, takže při čekání na každou zprávu s žádostí o přijetí odpovědi nemusíte blokovat kanál.

V modelu RequestContext žádosti a odpovědi je objektem propojení mezi příchozím požadavkem a odpovědí, která se zobrazí. Když server přijme požadavek, poskytne RequestContext instanci, která představuje požadavek na kanál. Kontext požadavku obsahuje původní zprávu požadavku a další užitečné vlastnosti. Tento kontext požadavku je pak uložen uvnitř objektu OperationContext pro načtení vaší službou. Vlastnost se obvykle používá Current pro přístup k požadavku aktuální operace.

Hodnota RequestContext může být null. Vzhledem k tomu, že role kontextu požadavku je propojení požadavků s odpověďmi, nemá smysl mít kontext požadavku, když nemáte odpověď, a proto je kontext v tomto případě nastavený na null. V případě jednosměrné operace nad modelem požadavků a odpovědí server přijímá požadavky, ale neodesílá zpět odpověď klientovi. Pokud RequestContext je null tedy neočekávaně, nejprve zkontrolujte, jestli je kontrakt operace IsOneWay.

Zvláštní poznámka pro uživatele spravovaného jazyka C++, kteří jsou odvozeni z této třídy:

  • Vložte kód čištění do (On)(Begin)Close (a/nebo OnAbort), ne do destruktoru.

  • Vyhněte se destruktorům: způsobí, že kompilátor automaticky vygeneruje IDisposable.

  • Vyhněte se ne referenčním členům: Můžou způsobit automatické vygenerování kompilátoru IDisposable.

  • Vyhněte se finalizátorům; Ale pokud ho zahrnete, měli byste potlačit upozornění sestavení a volat SuppressFinalize(Object) a finalizátor samotný z (On)(Begin)Close (nebo OnAbort), aby se emulovalo, jaké by bylo automaticky vygenerované IDisposable chování.

Konstruktory

RequestContext()

Inicializuje novou instanci RequestContext třídy.

Vlastnosti

RequestMessage

Při přepsání v odvozené třídě získá zprávu, která obsahuje požadavek.

Metody

Abort()

Při přepsání v odvozené třídě přeruší zpracování požadavku přidruženého k kontextu.

BeginReply(Message, AsyncCallback, Object)

Při přepsání v odvozené třídě zahájí asynchronní operaci, která odpovídá na požadavek přidružený k aktuálnímu kontextu.

BeginReply(Message, TimeSpan, AsyncCallback, Object)

Při přepsání v odvozené třídě zahájí asynchronní operaci, která odpoví na požadavek přidružený k aktuálnímu kontextu v zadaném časovém intervalu.

Close()

Při přepsání v odvozené třídě zavře operaci, která odpovídá na kontext požadavku přidružené k aktuálnímu kontextu.

Close(TimeSpan)

Při přepsání v odvozené třídě zavře operaci, která odpovídá na kontext požadavku přidruženého k aktuálnímu kontextu v zadaném časovém intervalu.

Dispose(Boolean)

Uvolní prostředky přidružené k kontextu.

EndReply(IAsyncResult)

Při přepsání v odvozené třídě dokončí asynchronní operaci pro odpověď na zprávu požadavku.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetType()

Získá aktuální Type instanci.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
Reply(Message)

Při přepsání v odvozené třídě odpovídá na zprávu požadavku.

Reply(Message, TimeSpan)

Při přepsání v odvozené třídě odpoví na zprávu požadavku v zadaném časovém intervalu.

ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Explicitní implementace rozhraní

IDisposable.Dispose()

Uvolní spravované i nespravované prostředky přidružené k kontextu.

Platí pro