Sdílet prostřednictvím


MessagePropertyFilter Třída

Definice

Určuje a vybere vlastnosti, které se načtou při 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 dvě zprávy s různými prioritami do fronty 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

MessagePropertyFilterMessageQueue Nastavení na instanci řídí sadu vlastností, které se načtou při zobrazení náhledu nebo přijetí zprávy. Filtr je nastaven na instanci MessageQueue , která načítá informace o zprávě. Když nastavíte člena MessagePropertyFilter s logickou hodnotou na false, zabráníte načtení informací o přidružené Message vlastnosti objektem MessageQueue.

Existuje několik vlastností filtru, které nejsou logickými hodnotami. 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 z fronty se přenáší menší množství dat.

Při nastavování vlastnosti v nástroji MessagePropertyFilterpouze určujete, jestli se tato vlastnost načte při přijetí nebo zobrazení náhledu zprávy. Neměníte hodnotu přidružené vlastnosti pro Message.

Konstruktor MessagePropertyFilter nastaví všechny vlastnosti filtru na výchozí hodnoty, které pro logické hodnoty jsou false. V tématu konstruktoru najdete výchozí hodnoty přiřazené celočíselným vlastnostem.

Konstruktory

MessagePropertyFilter()

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

Vlastnosti

AcknowledgeType

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst AcknowledgeType informace o vlastnosti při příjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu nebo náhledu zprávy.

DefaultBodySize

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

DefaultExtensionSize

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

DefaultLabelSize

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

DestinationQueue

Získá nebo nastaví hodnotu, která určuje, zda se mají načíst DestinationQueue informace o vlastnosti při příjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu 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říjmu nebo náhledu zprávy.

Metody

ClearAll()

Nastaví všechny hodnoty logického filtru na false, takže při přijetí zprávy se nenačtou žádné vlastnosti zprávy.

Clone()

Vytvoří mělkou kopii objektu.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

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

Slouží jako výchozí hashovací funkce.

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

Type Získá z aktuální instance.

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

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

(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 běžných vlastností služby Řízení front zpráv na true a celočíselné vlastnosti na výchozí hodnoty.

ToString()

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

(Zděděno od Object)

Platí pro

Viz také