IRequestChannel.Request Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Odešle požadavek založený na zprávě a vrátí korelovanou odpověď na základě zpráv.
Přetížení
Request(Message) |
Odešle požadavek založený na zprávě a vrátí korelovanou odpověď na základě zpráv. |
Request(Message, TimeSpan) |
Odešle požadavek založený na zprávě a vrátí korelovanou odpověď na základě zpráv v zadaném časovém intervalu. |
Request(Message)
- Zdroj:
- IRequestChannel.cs
- Zdroj:
- IRequestChannel.cs
- Zdroj:
- IRequestChannel.cs
Odešle požadavek založený na zprávě a vrátí korelovanou odpověď na základě zpráv.
public:
System::ServiceModel::Channels::Message ^ Request(System::ServiceModel::Channels::Message ^ message);
public System.ServiceModel.Channels.Message Request (System.ServiceModel.Channels.Message message);
abstract member Request : System.ServiceModel.Channels.Message -> System.ServiceModel.Channels.Message
Public Function Request (message As Message) As Message
Parametry
Návraty
Přijatý Message v odpovědi na požadavek.
Příklady
Následující kód ukazuje, jak implementovat tuto metodu:
public Message Request(Message message)
{
return this.InnerChannel.Request(message);
}
Poznámky
Implementace zajišťují IRequestChannel korelaci zprávy odpovědi se zprávou požadavku.
Obecně platí, že pokud implementace IRequestChannel obdrží zprávu, která není v korelaci s nevyřešeným požadavkem, je zahozena.
Metodu Request lze volat souběžně napříč více vlákny.
Předání zprávy do kanálu žádosti způsobí přístup ke zprávě. Po volání Requestuž nebudete moct zprávu kontrolovat ani volat Close na zprávu.
Pokud je zpráva požadavku větší, než maximální velikost zprávy povolená použitou vazbou QuotaExceededException , vyvolá se zpráva. Maximální velikost zprávy je nastavena MaxReceivedMessageSize vlastností. Výchozí hodnota je 65536 bajtů.
Platí pro
Request(Message, TimeSpan)
- Zdroj:
- IRequestChannel.cs
- Zdroj:
- IRequestChannel.cs
- Zdroj:
- IRequestChannel.cs
Odešle požadavek založený na zprávě a vrátí korelovanou odpověď na základě zpráv v zadaném časovém intervalu.
public:
System::ServiceModel::Channels::Message ^ Request(System::ServiceModel::Channels::Message ^ message, TimeSpan timeout);
public System.ServiceModel.Channels.Message Request (System.ServiceModel.Channels.Message message, TimeSpan timeout);
abstract member Request : System.ServiceModel.Channels.Message * TimeSpan -> System.ServiceModel.Channels.Message
Public Function Request (message As Message, timeout As TimeSpan) As Message
Parametry
Návraty
Přijatý Message v odpovědi na požadavek.
Příklady
Následující kód ukazuje, jak implementovat tuto metodu.
public Message Request(Message message, TimeSpan timeout)
{
return this.InnerChannel.Request(message, timeout);
}
Poznámky
Implementace zajišťují IRequestChannel korelaci zprávy odpovědi se zprávou požadavku.
Obecně platí, že pokud implementace IRequestChannel obdrží zprávu, která není v korelaci s nevyřešeným požadavkem, je zahozena.
Metodu Request lze volat souběžně napříč více vlákny.
Předání zprávy do kanálu žádosti způsobí přístup ke zprávě. Po volání Requestuž nebudete moct zprávu kontrolovat ani volat Close na zprávu.
Pokud je zpráva požadavku větší, než maximální velikost zprávy povolená použitou vazbou QuotaExceededException , vyvolá se zpráva. Maximální velikost zprávy je nastavena MaxReceivedMessageSize vlastností. Výchozí hodnota je 65536 bajtů.
timeout
Pokud se při volání funkce předá hodnota, použije se tato hodnota.
SendTimeout Pokud je ve vazbě nastavena hodnota, použije se hodnota vazby, pokud je při volání funkce zadána hodnota netimeout
.
Použije DefaultSendTimeout se, pokud není zadán časový limit vazby nebo při volání funkce. Tato výchozí hodnota je 1 minuta.
Poznámky pro implementátory
Operace by měla vyvolat TimeoutException chybu, pokud je před dokončením operace překročena zadaná timeout
hodnota.