System.Messaging Namespace

Stellt Klassen bereit, mit denen Sie eine Verbindung mit Nachrichtenwarteschlangen im Netzwerk herstellen, überwachen und verwalten und Nachrichten senden, empfangen oder anzeigen können.

Klassen

Name Beschreibung
AccessControlEntry

Gibt Zugriffsrechte für einen Trustee (Benutzer, Gruppe oder Computer) an, um anwendungsspezifische Implementierungen allgemeiner Aufgaben auszuführen.

AccessControlList

Enthält eine Liste der Zugriffssteuerungseinträge, die Zugriffsrechte für einen oder mehrere Trustees angeben.

ActiveXMessageFormatter

Serialisiert oder deserialisiert primitive Datentypen und andere Objekte in oder aus dem Textkörper einer Message Queuing-Nachricht, wobei ein Format verwendet wird, das mit der MSMQ ActiveX-Komponente kompatibel ist.

BinaryMessageFormatter

Serialisiert oder deserialisiert ein Objekt oder ein gesamtes Diagramm verbundener Objekte in oder aus dem Textkörper einer Message Queuing-Nachricht mithilfe eines Binärformats.

Cursor

A Cursor wird verwendet, um beim Lesen der Nachrichten der Warteschlange einen bestimmten Ort in einer MessageQueue Warteschlange zu verwalten.

DefaultPropertiesToSend

Gibt die Standardeigenschaftenwerte an, die beim Senden anderer Objekte als Message Instanzen an eine Nachrichtenwarteschlange verwendet werden.

Message

Bietet Zugriff auf die Eigenschaften, die zum Definieren einer Message Queuing-Nachricht erforderlich sind.

MessageEnumerator

Stellt einen Vorwärtscursor zum Aufzählen von Nachrichten in einer Nachrichtenwarteschlange bereit.

MessagePropertyFilter

Steuert und wählt die Eigenschaften aus, die beim Anzeigen oder Empfangen von Nachrichten aus einer Nachrichtenwarteschlange abgerufen werden.

MessageQueue

Bietet Zugriff auf eine Warteschlange auf einem Message Queuing-Server.

MessageQueueAccessControlEntry

Gibt Zugriffsrechte für einen Trustee (Benutzer, Gruppe oder Computer) zum Ausführen von Message Queuing-Aufgaben an.

MessageQueueCriteria

Filtert Nachrichtenwarteschlangen beim Ausführen einer Abfrage mithilfe der Methode der MessageQueue Klasse GetPublicQueues() .

MessageQueueEnumerator

Stellt einen Vorwärtscursor zum Aufzählen von Nachrichten in einer Nachrichtenwarteschlange bereit.

MessageQueueException

Die Ausnahme, die ausgelöst wird, wenn ein interner Microsoft Message Queuing-Fehler auftritt.

MessageQueueInstaller

Ermöglicht ihnen, eine Warteschlange zu installieren und zu konfigurieren, die Ihre Anwendung benötigt, um sie auszuführen. Diese Klasse wird vom Installationshilfsprogramm aufgerufen, z. B. InstallUtil.exe, bei der Installation einer MessageQueue.

MessageQueuePermission

Ermöglicht die Steuerung von Codezugriffsberechtigungen für Messaging.

MessageQueuePermissionAttribute

Ermöglicht deklarative MessageQueue Berechtigungsprüfungen.

MessageQueuePermissionEntry

Definiert die kleinste Einheit einer Codezugriffssicherheitsberechtigung für Messaging.

MessageQueuePermissionEntryCollection

Enthält eine stark typierte Auflistung von MessageQueuePermissionEntry Objekten.

MessageQueueTransaction

Stellt eine interne Message Queuing-Transaktion bereit.

MessagingDescriptionAttribute

Gibt die Beschreibung einer Eigenschaft oder eines Ereignisses an.

PeekCompletedEventArgs

Stellt Daten für das PeekCompleted-Ereignis bereit. Wenn der asynchrone Vorschauvorgang einen Ereignishandler aufruft, wird eine Instanz dieser Klasse an den Handler übergeben.

ReceiveCompletedEventArgs

Stellt Daten für das ReceiveCompleted-Ereignis bereit. Wenn der asynchrone Empfangsvorgang einen Ereignishandler aufruft, wird eine Instanz dieser Klasse an den Handler übergeben.

SecurityContext

Stellt den Sicherheitskontext für eine Nachricht in einer Warteschlange dar.

Trustee

Gibt ein Benutzerkonto, ein Gruppenkonto oder eine Anmeldesitzung an, für die ein Zugriffssteuerungseintrag gilt.

XmlMessageFormatter

Serialisiert und deserialisiert Objekte mithilfe des XML-Formats basierend auf der XSD-Schemadefinition in oder aus dem Textkörper einer Nachricht.

Schnittstellen

Name Beschreibung
IMessageFormatter

Serialisiert oder deserialisiert Objekte aus dem Textkörper einer Message Queuing-Nachricht.

Enumerationen

Name Beschreibung
AccessControlEntryType

Gibt an, ob Zugriffsberechtigungen für einen Trustee zugelassen, verweigert oder widerrufen werden sollen.

AcknowledgeTypes

Gibt die Arten der Bestätigungsnachricht an, die Message Queuing an die sendende Anwendung zurückgibt.

Acknowledgment

Gibt das Ergebnis einer versuchten Nachrichtenübermittlung an.

CryptographicProviderType

Gibt die kryptografischen Dienstanbieter an, die zum Überprüfen digitaler Signaturen verfügbar sind.

EncryptionAlgorithm

Gibt den Verschlüsselungsalgorithmus an, der zum Verschlüsseln des Nachrichtentexts einer privaten Nachricht verwendet wird.

EncryptionRequired

Gibt die Datenschutzstufe von Nachrichten an, die von der Warteschlange empfangen wurden.

GenericAccessRights

Verwendet das Windows 2000- und Windows NT-Zugriffsformat, um einen Satz allgemeiner Zugriffsrechte anzugeben, die Message Queuing standard- und objektspezifischen Zugriffsrechten zum Lesen, Schreiben und Ausführen zuordnet.

HashAlgorithm

Gibt den Hashalgorithmus an, der von Message Queuing beim Authentifizieren von Nachrichten verwendet wird.

MessageLookupAction

Gibt eine Nachricht an, die in einer Nachrichtenwarteschlange angezeigt oder empfangen werden soll.

MessagePriority

Gibt die Priorität Message Queuing auf eine Nachricht an, während sie an eine Warteschlange weitergeleitet wird, und beim Einfügen der Nachricht in die Zielwarteschlange.

MessageQueueAccessRights

Gibt einen Satz objektspezifischer Zugriffsrechte für Vorgänge an, die für Message Queuing spezifisch sind.

MessageQueueErrorCode

Gibt die Quelle eines Fehlers an, der in der Message Queuing-Anwendung aufgetreten ist und eine MessageQueueException Ausnahme generiert hat.

MessageQueuePermissionAccess

Definiert Zugriffsstufen, die von System.Messaging Berechtigungsklassen verwendet werden.

MessageQueueTransactionStatus

Gibt den Status einer internen Message Queuing-Transaktion an.

MessageQueueTransactionType

Gibt den Typ einer Message Queuing-Transaktion an.

MessageType

Gibt den Typ einer Nachricht an. Eine Nachricht kann eine typische Message Queuing-Nachricht, eine positive Nachricht (Ankunft und Gelesen) oder negative (Ankunfts- und Lesebestätigung) oder eine Meldungsnachricht sein.

PeekAction

Gibt an, ob die aktuelle Nachricht in einer Warteschlange oder die nächste Nachricht angezeigt werden soll.

QueueAccessMode

Gibt den Zugriffsmodus für eine MessageQueue zur Erstellungszeit an.

StandardAccessRights

Gibt einen Satz von Standardzugriffsrechten an, die Vorgängen entsprechen, die den meisten Typen sicherungsfähiger Objekte entsprechen.

TrusteeType

Gibt den Typ eines Vertrauensstellungsempfängers an.

Delegaten

Name Beschreibung
PeekCompletedEventHandler

Stellt die Methode dar, die das PeekCompleted Ereignis eines .MessageQueue

ReceiveCompletedEventHandler

Stellt die Methode dar, die das ReceiveCompleted Ereignis eines .MessageQueue

Hinweise

Elemente der MessageQueue Klasse enthalten die folgenden Methoden zum Lesen und Schreiben von Nachrichten in die Warteschlange:

  • Mit der Send Methode kann Ihre Anwendung Nachrichten in die Warteschlange schreiben. Überladungen der Methode ermöglichen es Ihnen, anzugeben, ob Ihre Nachricht mithilfe einer Message (die detaillierte Kontrolle über die von Ihnen gesendeten Informationen) oder ein anderes verwaltetes Objekt, einschließlich anwendungsspezifischer Klassen, gesendet werden soll. Die Methode unterstützt auch das Senden von Nachrichten als Teil einer Transaktion.

  • Die ReceiveMethoden und ReceiveByIdReceiveByCorrelationId Methoden stellen Funktionen zum Lesen von Nachrichten aus einer Warteschlange bereit. Wie bei der Send Methode stellen diese Methoden Überladungen bereit, die die Verarbeitung von Transaktionswarteschlangen unterstützen. Diese Methoden bieten auch Überladungen mit Timeout.

    Ausgabeparameter, mit denen die Verarbeitung fortgesetzt werden kann, wenn die Warteschlange leer ist. Da diese Methoden Beispiele für die synchrone Verarbeitung sind, unterbrechen sie den aktuellen Thread, bis eine Nachricht verfügbar ist, es sei denn, Sie geben ein Timeout an.

  • Die Peek Methode ähnelt Receivedem , führt jedoch nicht dazu, dass eine Nachricht beim Lesen aus der Warteschlange entfernt wird. Da Peek der Inhalt der Warteschlange nicht geändert wird, gibt es keine Überladungen zur Unterstützung der Transaktionsverarbeitung. Da Peeknachrichten jedoch Receivesynchron aus der Warteschlange gelesen werden, unterstützen Überladungen der Methode die Angabe eines Timeouts, um zu verhindern, dass der Thread auf unbestimmte Zeit wartet.

  • Die BeginPeekMethoden , EndPeek(IAsyncResult), , BeginReceiveund EndReceive(IAsyncResult) Methoden bieten Möglichkeiten zum asynchronen Lesen von Nachrichten aus der Warteschlange. Sie unterbrechen den aktuellen Thread nicht, während sie warten, bis eine Nachricht in der Warteschlange eingetroffen ist.

Die folgenden Methoden der MessageQueue Klasse stellen Funktionen zum Abrufen von Listen von Warteschlangen durch angegebene Kriterien bereit und bestimmen, ob bestimmte Warteschlangen vorhanden sind:

Andere Methoden der MessageQueue Klasse stellen die folgenden Funktionen bereit:

  • Erstellen und Löschen von Warteschlangen in der Nachrichtenwarteschlange.

  • Verwenden einer Enumerator für Nachrichten, um die Nachrichten in einer Warteschlange zu durchlaufen.

  • Verwenden einer Enumerator für die Warteschlange zum Durchlaufen der Warteschlangen im System.

  • Festlegen von ACL-basierten Zugriffsrechten.

  • Arbeiten mit dem Verbindungscache.

Die Message Klasse bietet detaillierte Kontrolle über die Informationen, die Sie an eine Warteschlange senden, und ist das Objekt, das beim Empfangen oder Anzeigen von Nachrichten aus einer Warteschlange verwendet wird. Neben dem Nachrichtentext umfassen die Eigenschaften der Message Klasse Bestätigungseinstellungen, Formatiererauswahl, Identifikations-, Authentifizierungs- und Verschlüsselungsinformationen, Zeitstempel, Hinweise zur Verwendung von Ablaufverfolgung, Serverjournaling und Transaktionsdaten.

Die MessageQueue Komponente ist den folgenden drei Formatierern zugeordnet, mit denen Sie Nachrichten serialisieren und deserialisieren können, die von Warteschlangen gesendet und empfangen werden:

  • Dies XmlMessageFormatter bietet lose gekoppelte Nachrichten, wodurch eine unabhängige Versionsverwaltung serialisierter Typen auf dem Client und Server ermöglicht wird.

  • Dies ActiveXMessageFormatter ist kompatibel mit dem MSMQ COM-Steuerelement. Sie können Typen senden, die vom Steuerelement empfangen werden können, und Typen empfangen, die vom Steuerelement gesendet wurden.

  • Das BinaryMessageFormatter bietet eine schnellere Alternative zum XmlMessageFormatter, aber ohne den Vorteil lose gekoppelter Nachrichten.

Andere Klassen im Messaging Namespace unterstützen Codezugriff und ACL-basierte Sicherheit, Filtern von Message Eigenschaften beim Lesen von Nachrichten aus einer Warteschlange und Verwenden von Transaktionen beim Senden und Empfangen von Nachrichten.