System.Messaging Пространство имен

Предоставляет классы, которые позволяют подключаться, отслеживать и администрировать очереди сообщений в сети и отправлять, получать или отображать сообщения.

Классы

Имя Описание
AccessControlEntry

Указывает права доступа для доверенного лица (пользователя, группы или компьютера) для выполнения конкретных приложений общих задач.

AccessControlList

Содержит список записей управления доступом, указав права доступа для одного или нескольких доверенных лиц.

ActiveXMessageFormatter

Сериализует или десериализирует примитивные типы данных и другие объекты в текст сообщения очереди сообщений, используя формат, совместимый с компонентом ActiveX MSMQ.

BinaryMessageFormatter

Сериализует или десериализирует объект или весь граф подключенных объектов, в текст сообщения очереди сообщений или из нее с помощью двоичного формата.

Cursor

Используется Cursor для поддержания определенного расположения при MessageQueue чтении сообщений очереди.

DefaultPropertiesToSend

Указывает значения свойств по умолчанию, которые будут использоваться при отправке объектов, отличных Message от экземпляров, в очередь сообщений.

Message

Предоставляет доступ к свойствам, необходимым для определения сообщения очереди сообщений.

MessageEnumerator

Предоставляет курсор только для пересылки для перечисления сообщений в очереди сообщений.

MessagePropertyFilter

Управляет и выбирает свойства, которые извлекаются при просмотре или получении сообщений из очереди сообщений.

MessageQueue

Предоставляет доступ к очереди на сервере очереди сообщений.

MessageQueueAccessControlEntry

Указывает права доступа для доверенного лица (пользователя, группы или компьютера) для выполнения задач очереди сообщений.

MessageQueueCriteria

Фильтрует очереди сообщений при выполнении запроса с помощью MessageQueue метода класса GetPublicQueues() .

MessageQueueEnumerator

Предоставляет курсор только для пересылки для перечисления сообщений в очереди сообщений.

MessageQueueException

Исключение, которое возникает, если возникает внутренняя ошибка очереди сообщений Майкрософт.

MessageQueueInstaller

Позволяет устанавливать и настраивать очередь, необходимую приложению для запуска. Этот класс вызывается служебной программой установки, например InstallUtil.exeпри установке MessageQueue.

MessageQueuePermission

Разрешает управление разрешениями на доступ к коду для обмена сообщениями.

MessageQueuePermissionAttribute

Разрешает декларативные MessageQueue проверки разрешений.

MessageQueuePermissionEntry

Определяет наименьшую единицу разрешения доступа к коду для обмена сообщениями.

MessageQueuePermissionEntryCollection

Содержит строго типизированную коллекцию MessageQueuePermissionEntry объектов.

MessageQueueTransaction

Предоставляет внутреннюю транзакцию очереди сообщений.

MessagingDescriptionAttribute

Задает описание для свойства или события.

PeekCompletedEventArgs

Предоставляет данные для PeekCompleted события. Когда асинхронная операция просмотра вызывает обработчик событий, экземпляр этого класса передается обработчику.

ReceiveCompletedEventArgs

Предоставляет данные для ReceiveCompleted события. Когда асинхронная операция получения вызывает обработчик событий, экземпляр этого класса передается обработчику.

SecurityContext

Представляет контекст безопасности для сообщения в очереди.

Trustee

Указывает учетную запись пользователя, учетную запись группы или сеанс входа, к которому применяется запись управления доступом.

XmlMessageFormatter

Сериализует и десериализирует объекты в текст сообщения или из текста сообщения, используя формат XML на основе определения схемы XSD.

Интерфейсы

Имя Описание
IMessageFormatter

Сериализует или десериализирует объекты из текста сообщения очереди сообщений.

Перечисления

Имя Описание
AccessControlEntryType

Указывает, следует ли разрешать, запрещать или отменять права доступа для доверенного лица.

AcknowledgeTypes

Указывает типы сообщения подтверждения, возвращаемого очередью сообщений в отправляющее приложение.

Acknowledgment

Указывает результат попытки доставки сообщений.

CryptographicProviderType

Указывает поставщики криптографических служб, доступные для проверки цифровых подписей.

EncryptionAlgorithm

Задает алгоритм шифрования, используемый для шифрования текста сообщения частного сообщения.

EncryptionRequired

Указывает уровень конфиденциальности сообщений, полученных очередью.

GenericAccessRights

Использует формат доступа Windows 2000 и Windows NT, чтобы указать набор общих прав доступа, которые очередь сообщений сопоставляет как со стандартными, так и с определенными объектами права доступа для чтения, записи и выполнения.

HashAlgorithm

Задает хэш-алгоритм, используемый очередью сообщений при проверке подлинности сообщений.

MessageLookupAction

Указывает сообщение для просмотра или получения из очереди сообщений.

MessagePriority

Указывает приоритет очереди сообщений, применяется к сообщению во время его маршрутизации в очередь и при вставке сообщения в целевую очередь.

MessageQueueAccessRights

Задает набор прав доступа для определенных объектов для операций, относящихся к очереди сообщений.

MessageQueueErrorCode

Определяет источник ошибки, возникной в приложении очереди сообщений, и создал исключение MessageQueueException.

MessageQueuePermissionAccess

Определяет уровни доступа, используемые классами разрешений System.Messaging.

MessageQueueTransactionStatus

Указывает состояние внутренней транзакции очереди сообщений.

MessageQueueTransactionType

Указывает тип транзакции очереди сообщений.

MessageType

Определяет тип сообщения. Сообщение может быть типичным сообщением очереди сообщений, положительным (прибытием и чтением) или отрицательным (прибытием и чтением) подтверждением или сообщением отчета.

PeekAction

Указывает, следует ли просмотреть текущее сообщение в очереди или следующее сообщение.

QueueAccessMode

Задает режим доступа для MessageQueue во время создания.

StandardAccessRights

Задает набор стандартных прав доступа, соответствующих операциям, общим для большинства типов защищаемых объектов.

TrusteeType

Указывает тип доверенного лица.

Делегаты

Имя Описание
PeekCompletedEventHandler

Представляет метод, который будет обрабатывать PeekCompleted событие объекта MessageQueue.

ReceiveCompletedEventHandler

Представляет метод, который будет обрабатывать ReceiveCompleted событие объекта MessageQueue.

Комментарии

MessageQueue Члены класса включают следующие методы для чтения и записи сообщений в очередь:

  • Метод Send позволяет приложению записывать сообщения в очередь. Перегрузки метода позволяют указать, следует ли отправлять сообщение с помощью Message (который обеспечивает подробный контроль над отправленной информацией) или любым другим управляемым объектом, включая классы, относящиеся к приложению. Метод также поддерживает отправку сообщений в рамках транзакции.

  • ReceiveМетоды ReceiveByIdи ReceiveByCorrelationId функции предоставляют функции чтения сообщений из очереди. Send Как и метод, эти методы предоставляют перегрузки, поддерживающие обработку транзакционных очередей. Эти методы также предоставляют перегрузки с временем ожидания.

    Параметры, позволяющие продолжить обработку, если очередь пуста. Так как эти методы являются примерами синхронной обработки, они прерывают текущий поток до тех пор, пока сообщение не будет доступно, если не указать время ожидания.

  • Метод Peek аналогичен Receive, но он не приводит к удалению сообщения из очереди при чтении. Так как Peek содержимое очереди не изменяется, перегрузки для поддержки обработки транзакций отсутствуют. Тем не менее, так как, напримерPeekReceive, считывает сообщения синхронно из очереди, перегрузки метода поддерживают указание времени ожидания, чтобы предотвратить ожидание потока на неопределенный срок.

  • BeginPeekМетоды EndPeek(IAsyncResult), BeginReceiveи EndReceive(IAsyncResult) методы предоставляют способы асинхронного чтения сообщений из очереди. Они не прерывают текущий поток во время ожидания прибытия сообщения в очередь.

Следующие методы MessageQueue класса предоставляют функциональные возможности для получения списков очередей с помощью указанных условий и определения наличия определенных очередей:

Другие методы MessageQueue класса предоставляют следующие функциональные возможности:

  • Создание и удаление очередей очередей сообщений.

  • Использование перечислителя сообщений для пошагового выполнения сообщений в очереди.

  • Использование перечислителя очередей для итерации очередей в системе.

  • Задание прав доступа на основе ACL.

  • Работа с кэшем подключений.

Класс Message предоставляет подробный контроль над информацией, которую вы отправляете в очередь, и является объектом, используемым при получении или просмотре сообщений из очереди. Помимо текста сообщения, свойства Message класса включают параметры подтверждения, выбор форматирования, идентификацию, проверку подлинности и шифрование, метки времени, сведения об использовании трассировки, журналов сервера и очередей недоставленных букв и данных транзакций.

Компонент MessageQueue связан со следующими тремя модулями форматирования, что позволяет сериализовать и десериализировать сообщения, отправленные и полученные из очередей:

  • Предоставляет XmlMessageFormatter слабо связанные сообщения, обеспечивая независимое управление версиями сериализованных типов на клиенте и сервере.

  • Совместим ActiveXMessageFormatter с элементом управления COM MSMQ. Он позволяет отправлять типы, которые могут получаться элементом управления и получать типы, отправленные элементом управления.

  • Это BinaryMessageFormatter обеспечивает более быструю альтернативу XmlMessageFormatter, но без преимущества слабо связанного обмена сообщениями.

Другие классы в Messaging пространстве имен поддерживают безопасность на основе кода и ACL, фильтрацию Message свойств при чтении сообщений из очереди и использование транзакций при отправке и получении сообщений.