MessagePropertyFilter Třída

Definice

Řídí a vybere vlastnosti, které se načtou při zobrazení náhledu nebo příjmu zpráv z fronty zpráv.

public ref class MessagePropertyFilter
public ref class MessagePropertyFilter : ICloneable
[System.ComponentModel.TypeConverter(typeof(System.ComponentModel.ExpandableObjectConverter))]
public class MessagePropertyFilter
[System.ComponentModel.TypeConverter(typeof(System.ComponentModel.ExpandableObjectConverter))]
public class MessagePropertyFilter : ICloneable
[<System.ComponentModel.TypeConverter(typeof(System.ComponentModel.ExpandableObjectConverter))>]
type MessagePropertyFilter = class
[<System.ComponentModel.TypeConverter(typeof(System.ComponentModel.ExpandableObjectConverter))>]
type MessagePropertyFilter = class
    interface ICloneable
Public Class MessagePropertyFilter
Public Class MessagePropertyFilter
Implements ICloneable
Dědičnost
MessagePropertyFilter
Atributy
Implementuje

Příklady

Následující příklad kódu odešle do fronty dvě zprávy s různými prioritami a následně je načte.


#using <system.dll>
#using <system.messaging.dll>

using namespace System;
using namespace System::Messaging;

/// <summary>
/// Provides a container class for the example.
/// </summary>
ref class MyNewQueue
{
   //**************************************************
   // Sends a string message to a queue.
   //**************************************************
public:
   void SendMessage( MessagePriority priority, String^ messageBody )
   {
      // Connect to a queue on the local computer.
      MessageQueue^ myQueue = gcnew MessageQueue( ".\\myQueue" );

      // Create a new message.
      Message^ myMessage = gcnew Message;
      if ( priority > MessagePriority::Normal )
      {
         myMessage->Body = "High Priority: {0}",messageBody;
      }
      else
      {
         myMessage->Body = messageBody;
      }

      // Set the priority of the message.
      myMessage->Priority = priority;

      // Send the Order to the queue.
      myQueue->Send( myMessage );

      return;
   }

   //**************************************************
   // Receives a message.
   //**************************************************
   void ReceiveMessage()
   {
      // Connect to the a queue on the local computer.
      MessageQueue^ myQueue = gcnew MessageQueue( ".\\myQueue" );

      // Set the queue to read the priority. By default, it
      // is not read.
      myQueue->MessageReadPropertyFilter->Priority = true;

      // Set the formatter to indicate body contains a String^.
      array<Type^>^ p = gcnew array<Type^>(1);
      p[ 0 ] = String::typeid;
      myQueue->Formatter = gcnew XmlMessageFormatter( p );
      try
      {
         // Receive and format the message. 
         Message^ myMessage = myQueue->Receive();

         // Display message information.
         Console::WriteLine( "Priority: {0}",
            myMessage->Priority );
         Console::WriteLine( "Body: {0}",
            myMessage->Body );
      }
      catch ( MessageQueueException^ ) 
      {
         // Handle Message Queuing exceptions.
      }
      // Handle invalid serialization format.
      catch ( InvalidOperationException^ e ) 
      {
         Console::WriteLine( e->Message );
      }

      // Catch other exceptions as necessary.

      return;
   }
};

//**************************************************
// Provides an entry point into the application.
//		 
// This example sends and receives a message from
// a queue.
//**************************************************
int main()
{
   // Create a new instance of the class.
   MyNewQueue^ myNewQueue = gcnew MyNewQueue;

   // Send messages to a queue.
   myNewQueue->SendMessage( MessagePriority::Normal, "First Message Body." );
   myNewQueue->SendMessage( MessagePriority::Highest, "Second Message Body." );

   // Receive messages from a queue.
   myNewQueue->ReceiveMessage();
   myNewQueue->ReceiveMessage();

   return 0;
}
using System;
using System.Messaging;

namespace MyProject
{

    /// <summary>
    /// Provides a container class for the example.
    /// </summary>
    public class MyNewQueue
    {

        //**************************************************
        // Provides an entry point into the application.
        //		
        // This example sends and receives a message from
        // a queue.
        //**************************************************

        public static void Main()
        {
            // Create a new instance of the class.
            MyNewQueue myNewQueue = new MyNewQueue();

            // Send messages to a queue.
            myNewQueue.SendMessage(MessagePriority.Normal, "First Message Body.");
            myNewQueue.SendMessage(MessagePriority.Highest, "Second Message Body.");

            // Receive messages from a queue.
            myNewQueue.ReceiveMessage();
            myNewQueue.ReceiveMessage();

            return;
        }

        //**************************************************
        // Sends a string message to a queue.
        //**************************************************
        
        public void SendMessage(MessagePriority priority, string messageBody)
        {

            // Connect to a queue on the local computer.
            MessageQueue myQueue = new MessageQueue(".\\myQueue");

            // Create a new message.
            Message myMessage = new Message();

            if(priority > MessagePriority.Normal)
            {
                myMessage.Body = "High Priority: " + messageBody;
            }
            else
            {
                myMessage.Body = messageBody;
            }

            // Set the priority of the message.
            myMessage.Priority = priority;

            // Send the Order to the queue.
            myQueue.Send(myMessage);

            return;
        }

        //**************************************************
        // Receives a message.
        //**************************************************
        
        public  void ReceiveMessage()
        {
            // Connect to the a queue on the local computer.
            MessageQueue myQueue = new MessageQueue(".\\myQueue");

            // Set the queue to read the priority. By default, it
            // is not read.
            myQueue.MessageReadPropertyFilter.Priority = true;

            // Set the formatter to indicate body contains a string.
            myQueue.Formatter = new XmlMessageFormatter(new Type[]
                {typeof(string)});
            
            try
            {
                // Receive and format the message.
                Message myMessage =	myQueue.Receive();

                // Display message information.
                Console.WriteLine("Priority: " +
                    myMessage.Priority.ToString());
                Console.WriteLine("Body: " +
                    myMessage.Body.ToString());
            }
            
            catch (MessageQueueException)
            {
                // Handle Message Queuing exceptions.
            }

            // Handle invalid serialization format.
            catch (InvalidOperationException e)
            {
                Console.WriteLine(e.Message);
            }
            
            // Catch other exceptions as necessary.

            return;
        }
    }
}
Imports System.Messaging


'Provides a container class for the example.
Public Class MyNewQueue
      
      

      ' Provides an entry point into the application.
      '		 
      ' This example sends and receives a message from
      ' a queue.

      Public Shared Sub Main()
         ' Create a new instance of the class.
         Dim myNewQueue As New MyNewQueue()
         
         ' Send messages to a queue.
         myNewQueue.SendMessage(MessagePriority.Normal, "First Message Body.")
         myNewQueue.SendMessage(MessagePriority.Highest, "Second Message Body.")
         
         ' Receive messages from a queue.
         myNewQueue.ReceiveMessage()
         myNewQueue.ReceiveMessage()
         
         Return
      End Sub
      
      
      

      ' Sends a string message to a queue.

      Public Sub SendMessage(priority As MessagePriority, messageBody As String)
         
         ' Connect to a queue on the local computer.
         Dim myQueue As New MessageQueue(".\myQueue")
         
         ' Create a new message.
         Dim myMessage As New Message()
         
         If priority > MessagePriority.Normal Then
            myMessage.Body = "High Priority: " + messageBody
         Else
            myMessage.Body = messageBody
         End If 
         ' Set the priority of the message.
         myMessage.Priority = priority
         
         
         ' Send the Order to the queue.
         myQueue.Send(myMessage)
         
         Return
      End Sub
      
      
      

      ' Receives a message.

      Public Sub ReceiveMessage()
         ' Connect to the a queue on the local computer.
         Dim myQueue As New MessageQueue(".\myQueue")
         
         ' Set the queue to read the priority. By default, it
         ' is not read.
         myQueue.MessageReadPropertyFilter.Priority = True
         
         ' Set the formatter to indicate body contains a string.
         myQueue.Formatter = New XmlMessageFormatter(New Type() {GetType(String)})
         
         Try
            ' Receive and format the message. 
            Dim myMessage As Message = myQueue.Receive()
            
            ' Display message information.
            Console.WriteLine(("Priority: " + myMessage.Priority.ToString()))
            Console.WriteLine(("Body: " + myMessage.Body.ToString()))
         
         
         
         ' Handle invalid serialization format.
         Catch e As InvalidOperationException
            Console.WriteLine(e.Message)
         End Try
         
         ' Catch other exceptions as necessary.
         Return
      End Sub
   End Class

Poznámky

MessagePropertyFilter Nastavení instance MessageQueue řídí sadu vlastností, které se načítají při náhledu nebo přijetí zprávy. Filtr je nastaven na instanci MessageQueue , která načte informace o zprávě. Když nastavíte MessagePropertyFilter boolean-valued člen na false, zabráníte, aby informace o přidružené Message vlastnosti byly načteny objektem MessageQueue.

Existuje několik vlastností filtru, které nejsou logické hodnoty. Jedná se o celočíselné hodnoty, které získávají nebo nastavují výchozí velikosti Message.Body, Message.Extensionnebo Message.Label.

Načtení omezené sady vlastností pomáhá zlepšit výkon, protože menší množství dat se přenáší z fronty.

Při nastavování vlastnosti udávajíte MessagePropertyFilterpouze to, zda je tato vlastnost načtena při přijetí nebo náhledu zprávy. Neměníte přidruženou hodnotu vlastnosti objektu Message.

Konstruktor MessagePropertyFilter nastaví všechny vlastnosti filtru na výchozí hodnoty, které jsou pro logické hodnoty false. Viz téma konstruktoru pro výchozí hodnoty přiřazené integer-valued vlastnosti.

Konstruktory

Name Description
MessagePropertyFilter()

Inicializuje novou instanci MessagePropertyFilter třídy a nastaví výchozí hodnoty pro všechny vlastnosti.

Vlastnosti

Name Description
AcknowledgeType

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst AcknowledgeType informace o vlastnosti při přijetí nebo náhledu zprávy.

Acknowledgment

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst Acknowledgment informace o vlastnosti při přijetí nebo náhledu zprávy.

AdministrationQueue

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst AdministrationQueue informace o vlastnosti při přijetí nebo náhledu zprávy.

AppSpecific

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst AppSpecific informace o vlastnosti při přijetí nebo náhledu zprávy.

ArrivedTime

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst ArrivedTime informace o vlastnosti při přijetí nebo náhledu zprávy.

AttachSenderId

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst AttachSenderId informace o vlastnosti při přijetí nebo náhledu zprávy.

Authenticated

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst Authenticated informace o vlastnosti při přijetí nebo náhledu zprávy.

AuthenticationProviderName

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst AuthenticationProviderName informace o vlastnosti při přijetí nebo náhledu zprávy.

AuthenticationProviderType

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst AuthenticationProviderType informace o vlastnosti při přijetí nebo náhledu zprávy.

Body

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst Body informace o vlastnosti při přijetí nebo náhledu zprávy.

ConnectorType

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst ConnectorType informace o vlastnosti při přijetí nebo náhledu zprávy.

CorrelationId

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst CorrelationId informace o vlastnosti při přijetí nebo náhledu zprávy.

DefaultBodySize

Získá nebo nastaví velikost výchozí vyrovnávací paměti těla v bajtech.

DefaultExtensionSize

Získá nebo nastaví velikost výchozí vyrovnávací paměti rozšíření v bajtech.

DefaultLabelSize

Získá nebo nastaví velikost výchozí vyrovnávací paměti popisku v bajtech.

DestinationQueue

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst DestinationQueue informace o vlastnosti při přijetí nebo náhledu zprávy.

DestinationSymmetricKey

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst DestinationSymmetricKey informace o vlastnosti při přijetí nebo náhledu zprávy.

DigitalSignature

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst DigitalSignature informace o vlastnosti při přijetí nebo náhledu zprávy.

EncryptionAlgorithm

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst EncryptionAlgorithm informace o vlastnosti při přijetí nebo náhledu zprávy.

Extension

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst Extension informace o vlastnosti při přijetí nebo náhledu zprávy.

HashAlgorithm

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst HashAlgorithm informace o vlastnosti při přijetí nebo náhledu zprávy.

Id

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst Id informace o vlastnosti při přijetí nebo náhledu zprávy.

IsFirstInTransaction

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst IsFirstInTransaction informace o vlastnosti při přijetí nebo náhledu zprávy.

IsLastInTransaction

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst IsLastInTransaction informace o vlastnosti při přijetí nebo náhledu zprávy.

Label

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst Label informace o vlastnosti při přijetí nebo náhledu zprávy.

LookupId

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst LookupId informace o vlastnosti při přijetí nebo náhledu zprávy.

MessageType

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst MessageType informace o vlastnosti při přijetí nebo náhledu zprávy.

Priority

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst Priority informace o vlastnosti při přijetí nebo náhledu zprávy.

Recoverable

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst Recoverable informace o vlastnosti při přijetí nebo náhledu zprávy.

ResponseQueue

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst ResponseQueue informace o vlastnosti při přijetí nebo náhledu zprávy.

SenderCertificate

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst SenderCertificate informace o vlastnosti při přijetí nebo náhledu zprávy.

SenderId

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst SenderId informace o vlastnosti při přijetí nebo náhledu zprávy.

SenderVersion

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst SenderVersion informace o vlastnosti při přijetí nebo náhledu zprávy.

SentTime

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst SentTime informace o vlastnosti při přijetí nebo náhledu zprávy.

SourceMachine

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst SourceMachine informace o vlastnosti při přijetí nebo náhledu zprávy.

TimeToBeReceived

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst TimeToBeReceived informace o vlastnosti při přijetí nebo náhledu zprávy.

TimeToReachQueue

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst TimeToReachQueue informace o vlastnosti při přijetí nebo náhledu zprávy.

TransactionId

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst TransactionId informace o vlastnosti při přijetí nebo náhledu zprávy.

TransactionStatusQueue

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst TransactionStatusQueue informace o vlastnosti při přijetí nebo náhledu zprávy.

UseAuthentication

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst UseAuthentication informace o vlastnosti při přijetí nebo náhledu zprávy.

UseDeadLetterQueue

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst UseDeadLetterQueue informace o vlastnosti při přijetí nebo náhledu zprávy.

UseEncryption

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst UseEncryption informace o vlastnosti při přijetí nebo náhledu zprávy.

UseJournalQueue

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst UseJournalQueue informace o vlastnosti při přijetí nebo náhledu zprávy.

UseTracing

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst UseTracing informace o vlastnosti při přijetí nebo náhledu zprávy.

Metody

Name Description
ClearAll()

Nastaví všechny logické hodnoty filtru na falsehodnotu , aby se při příjmu zprávy nenačetly žádné vlastnosti zprávy.

Clone()

Vytvoří mělkou kopii objektu.

Equals(Object)

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetType()

Získá Type aktuální instance.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Object.

(Zděděno od Object)
SetAll()

Určuje, že se mají načíst všechny vlastnosti zprávy při přijetí zprávy.

SetDefaults()

Nastaví hodnoty filtru společných vlastností služby Řízení front zpráv na true a celočíselné hodnoty na výchozí hodnoty.

ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Platí pro

Viz také