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 класса предоставляют функциональные возможности для получения списков очередей с помощью указанных условий и определения наличия определенных очередей:
GetPrivateQueuesByMachine(String) включает извлечение частных очередей на компьютере.
GetPublicQueuesByCategory(Guid), GetPublicQueuesByLabel(String)и GetPublicQueuesByMachine(String) предоставляют способы получения общедоступных очередей по общим критериям. Перегрузка предоставляет еще более подробные GetPublicQueues сведения о выборе очередей на основе ряда критериев поиска.
Другие методы MessageQueue класса предоставляют следующие функциональные возможности:
Создание и удаление очередей очередей сообщений.
Использование перечислителя сообщений для пошагового выполнения сообщений в очереди.
Использование перечислителя очередей для итерации очередей в системе.
Задание прав доступа на основе ACL.
Работа с кэшем подключений.
Класс Message предоставляет подробный контроль над информацией, которую вы отправляете в очередь, и является объектом, используемым при получении или просмотре сообщений из очереди. Помимо текста сообщения, свойства Message класса включают параметры подтверждения, выбор форматирования, идентификацию, проверку подлинности и шифрование, метки времени, сведения об использовании трассировки, журналов сервера и очередей недоставленных букв и данных транзакций.
Компонент MessageQueue связан со следующими тремя модулями форматирования, что позволяет сериализовать и десериализировать сообщения, отправленные и полученные из очередей:
Предоставляет XmlMessageFormatter слабо связанные сообщения, обеспечивая независимое управление версиями сериализованных типов на клиенте и сервере.
Совместим ActiveXMessageFormatter с элементом управления COM MSMQ. Он позволяет отправлять типы, которые могут получаться элементом управления и получать типы, отправленные элементом управления.
Это BinaryMessageFormatter обеспечивает более быструю альтернативу XmlMessageFormatter, но без преимущества слабо связанного обмена сообщениями.
Другие классы в Messaging пространстве имен поддерживают безопасность на основе кода и ACL, фильтрацию Message свойств при чтении сообщений из очереди и использование транзакций при отправке и получении сообщений.