IRequestChannel.Request Methode
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.
Verzendt een aanvraag op basis van een bericht en retourneert het gecorreleerde antwoord op basis van berichten.
Overloads
| Name | Description |
|---|---|
| Request(Message) |
Verzendt een aanvraag op basis van een bericht en retourneert het gecorreleerde antwoord op basis van berichten. |
| Request(Message, TimeSpan) |
Verzendt een aanvraag op basis van berichten en retourneert het gecorreleerde antwoord op basis van berichten binnen een opgegeven tijdsinterval. |
Request(Message)
Verzendt een aanvraag op basis van een bericht en retourneert het gecorreleerde antwoord op basis van berichten.
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
Parameters
Retouren
De Message ontvangen reactie op de aanvraag.
Voorbeelden
De volgende code laat zien hoe u deze methode implementeert:
public Message Request(Message message)
{
return this.InnerChannel.Request(message);
}
Opmerkingen
Implementaties om IRequestChannel ervoor te zorgen dat het antwoordbericht is gecorreleerd met het aanvraagbericht.
Als een implementatie van IRequestChannel een bericht dat niet is gecorreleerd aan een openstaande aanvraag, wordt dit over het algemeen verwijderd.
De Request methode kan gelijktijdig worden aangeroepen voor meerdere threads.
Als u het bericht doorgeeft aan het aanvraagkanaal, wordt het bericht geopend. Nadat u hebt gebeld Request, kunt u het bericht niet meer inspecteren of bellen Close op het bericht.
Als het aanvraagbericht groter is dan de maximale berichtgrootte die is toegestaan door de binding die wordt gebruikt, wordt er een QuotaExceededException gegenereerd. De maximale berichtgrootte wordt ingesteld door de MaxReceivedMessageSize eigenschap. De standaardwaarde is 65536 bytes.
Van toepassing op
Request(Message, TimeSpan)
Verzendt een aanvraag op basis van berichten en retourneert het gecorreleerde antwoord op basis van berichten binnen een opgegeven tijdsinterval.
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
Parameters
- timeout
- TimeSpan
Hiermee TimeSpan geeft u het tijdsinterval op waarin een antwoord moet worden ontvangen.
Retouren
De Message ontvangen reactie op de aanvraag.
Voorbeelden
De volgende code laat zien hoe u deze methode implementeert.
public Message Request(Message message, TimeSpan timeout)
{
return this.InnerChannel.Request(message, timeout);
}
Opmerkingen
Implementaties om IRequestChannel ervoor te zorgen dat het antwoordbericht is gecorreleerd met het aanvraagbericht.
Als een implementatie van IRequestChannel een bericht dat niet is gecorreleerd aan een openstaande aanvraag, wordt dit over het algemeen verwijderd.
De Request methode kan gelijktijdig worden aangeroepen voor meerdere threads.
Als u het bericht doorgeeft aan het aanvraagkanaal, wordt het bericht geopend. Nadat u hebt gebeld Request, kunt u het bericht niet meer inspecteren of bellen Close op het bericht.
Als het aanvraagbericht groter is dan de maximale berichtgrootte die is toegestaan door de binding die wordt gebruikt, wordt er een QuotaExceededException gegenereerd. De maximale berichtgrootte wordt ingesteld door de MaxReceivedMessageSize eigenschap. De standaardwaarde is 65536 bytes.
Als er een timeout wordt doorgegeven tijdens het aanroepen van de functie, wordt die waarde gebruikt. Als de SendTimeout binding is ingesteld, wordt de waarde voor de binding gebruikt als er geen timeout is opgegeven tijdens het aanroepen van de functie.
Deze DefaultSendTimeout wordt gebruikt als er geen time-out is opgegeven voor de binding of tijdens het aanroepen van de functie. Deze standaardwaarde is 1 minuut.
Notities voor uitvoerders
De bewerking moet een TimeoutException als de opgegeven timeout waarde wordt overschreden voordat de bewerking is voltooid.