IOutputChannel.BeginSend Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Rozpoczyna operację asynchroniczną w celu wysłania komunikatu.
Przeciążenia
BeginSend(Message, AsyncCallback, Object) |
Rozpoczyna operację asynchroniczną w celu przesłania komunikatu do miejsca docelowego kanału wyjściowego. |
BeginSend(Message, TimeSpan, AsyncCallback, Object) |
Rozpoczyna operację asynchroniczną w celu przesłania komunikatu do miejsca docelowego kanału wyjściowego w określonym przedziale czasu. |
BeginSend(Message, AsyncCallback, Object)
- Źródło:
- IOutputChannel.cs
Rozpoczyna operację asynchroniczną w celu przesłania komunikatu do miejsca docelowego kanału wyjściowego.
public:
IAsyncResult ^ BeginSend(System::ServiceModel::Channels::Message ^ message, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginSend (System.ServiceModel.Channels.Message message, AsyncCallback callback, object state);
abstract member BeginSend : System.ServiceModel.Channels.Message * AsyncCallback * obj -> IAsyncResult
Public Function BeginSend (message As Message, callback As AsyncCallback, state As Object) As IAsyncResult
Parametry
- callback
- AsyncCallback
Delegat AsyncCallback .
- state
- Object
Obiekt określony przez aplikację, który zawiera informacje o stanie skojarzone z operacją wysyłania asynchronicznego.
Zwraca
Element IAsyncResult odwołujący się do asynchronicznej transmisji komunikatów.
Przykłady
Poniższy kod ilustruje sposób implementacji tej metody:
public IAsyncResult BeginReceiveRequest(TimeSpan timeout, AsyncCallback callback, object state)
{
ReceiveRequestAsyncResult result = new ReceiveRequestAsyncResult(this, timeout, callback, state);
result.Begin();
return result;
}
Uwagi
Miejsce docelowe komunikatów wysyłanych w kanale wyjściowym jest określone w czasie tworzenia kanału.
Metoda BeginSend nie gwarantuje dostarczania komunikatu do zdalnego punktu końcowego. Jeśli wymagane są gwarancje dostarczenia, użyj polecenia IOutputSessionChannel.
Jeśli wysłana wiadomość jest większa, zostanie zgłoszony maksymalny rozmiar komunikatu dozwolony przez używane QuotaExceededException powiązanie. Maksymalny rozmiar komunikatu MaxReceivedMessageSize jest ustawiany przez właściwość . Wartość domyślna to 65536 bajtów.
Dotyczy
BeginSend(Message, TimeSpan, AsyncCallback, Object)
- Źródło:
- IOutputChannel.cs
Rozpoczyna operację asynchroniczną w celu przesłania komunikatu do miejsca docelowego kanału wyjściowego w określonym przedziale czasu.
public:
IAsyncResult ^ BeginSend(System::ServiceModel::Channels::Message ^ message, TimeSpan timeout, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginSend (System.ServiceModel.Channels.Message message, TimeSpan timeout, AsyncCallback callback, object state);
abstract member BeginSend : System.ServiceModel.Channels.Message * TimeSpan * AsyncCallback * obj -> IAsyncResult
Public Function BeginSend (message As Message, timeout As TimeSpan, callback As AsyncCallback, state As Object) As IAsyncResult
Parametry
- timeout
- TimeSpan
Określa TimeSpan , jak długo operacja wysyłania musi zakończyć się przed przekroczeniem limitu czasu.
- callback
- AsyncCallback
Delegat AsyncCallback , który odbiera powiadomienie o zakończeniu operacji asynchronicznej.
- state
- Object
Obiekt określony przez aplikację, który zawiera informacje o stanie skojarzone z operacją wysyłania asynchronicznego.
Zwraca
Element IAsyncResult , który odwołuje się do operacji wysyłania asynchronicznego.
Przykłady
Poniższy kod ilustruje sposób implementacji tej metody:
public RequestContext EndReceiveRequest(IAsyncResult result)
{
return ReceiveRequestAsyncResult.End(result);
}
Uwagi
Miejsce docelowe komunikatów wysyłanych w kanale wyjściowym jest określone w czasie tworzenia kanału.
Metoda BeginSend nie gwarantuje dostarczania komunikatu do zdalnego punktu końcowego. Jeśli wymagane są gwarancje dostarczenia, użyj polecenia IOutputSessionChannel.
Jeśli wysłana wiadomość jest większa, zostanie zgłoszony maksymalny rozmiar komunikatu dozwolony przez używane QuotaExceededException powiązanie. Maksymalny rozmiar komunikatu MaxReceivedMessageSize jest ustawiany przez właściwość . Wartość domyślna to 65536 bajtów.
Uwagi dotyczące implementowania
Operacja powinna zgłosić TimeoutException wartość , jeśli określona timeout
wartość została przekroczona.