ReceiveErrorHandling Enum
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.
Hiermee geeft u verwerking voor gifberichten.
public enum class ReceiveErrorHandling
public enum ReceiveErrorHandling
type ReceiveErrorHandling =
Public Enum ReceiveErrorHandling
- Overname
Velden
| Name | Waarde | Description |
|---|---|---|
| Fault | 0 | Met deze optie wordt een fout verzonden naar de listener die de ServiceHost heeft veroorzaakt. Het bericht moet door een extern mechanisme uit de toepassingswachtrij worden verwijderd voordat de toepassing berichten uit de wachtrij kan blijven verwerken. |
| Drop | 1 | Deze optie laat het gifbericht vallen. Het bericht wordt nooit bezorgd bij de toepassing. Als de TTL van het bericht op dit moment al is verlopen, kan het bericht worden weergegeven in de wachtrij voor dode brieven van de afzender. Als dat niet het geval is, wordt het bericht nergens weergegeven. Met deze optie wordt aangegeven dat de gebruiker niet erg belangrijk is als het bericht verloren gaat. |
| Reject | 2 | Dit geeft MSMQ de opdracht om een negatieve bevestiging terug te sturen naar de verzendende wachtrijbeheerder dat het bericht niet kan worden ontvangen door de toepassing. Het bericht wordt geplaatst in de wachtrij van de wachtrij voor het verzenden van wachtrijbeheer. |
| Move | 3 | Hiermee wordt het gifbericht verplaatst naar een gifberichtwachtrij voor latere verwerking door een toepassing voor het verwerken van gifberichten. |
Voorbeelden
De volgende configuratiecode laat zien hoe u deze eigenschap instelt in het serviceconfiguratiebestand:
<configuration>
<appSettings>
<!-- use appSetting to configure MSMQ queue name -->
<add key="queueName" value=".\private$\ServiceModelSamplesPoison" />
<add key="baseAddress" value="http://localhost:8000/orderProcessor/poisonSample"/>
</appSettings>
<system.serviceModel>
<services>
<service
name="Microsoft.ServiceModel.Samples.OrderProcessorService">
<!-- Define NetMsmqEndpoint -->
<endpoint address="net.msmq://localhost/private/ServiceModelSamplesPoison"
binding="netMsmqBinding"
bindingConfiguration="PoisonBinding"
contract="Microsoft.ServiceModel.Samples.IOrderProcessor" />
</service>
</services>
<bindings>
<netMsmqBinding>
<binding name="PoisonBinding"
receiveRetryCount="0"
maxRetryCycles="1"
retryCycleDelay="00:00:05"
receiveErrorHandling="Fault"
/>
</netMsmqBinding>
</bindings>
</system.serviceModel>
</configuration>
Opmerkingen
Een gifbericht is een bericht dat mislukt bij herhaalde pogingen om aan de toepassing te leveren. Dit is alleen van toepassing wanneer u een op MSMQ (Message Queuing) gebaseerde binding gebruikt. De standaardwaarde is Fault, waarmee de listener en daarom de ServiceHost worden beschadigd. In het geval dat de service moest worden beschadigd vanwege een gifbericht, wordt er een MsmqPoisonMessageException gegooid. De uitzondering bevat het LookupId MSMQ-bericht dat kan worden gebruikt om het bericht buiten de weg te zetten met system.messaging-API. Bepaalde waarden van de opsomming ReceiveErrorHandling zoals Reject en Move zijn alleen beschikbaar op Windows Vista. U bepaalt de verwerking van gifberichten door de ReceiveErrorHandling eigenschap in te stellen op een van de waarden van deze opsomming.