MessagePropertyFilter Sınıf

Tanım

İleti kuyruğundan iletilere göz atılırken veya alınırken alınan özellikleri denetler ve seçer.

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
Devralma
MessagePropertyFilter
Öznitelikler
Uygulamalar

Örnekler

Aşağıdaki kod örneği kuyruğa farklı önceliklere ait iki ileti gönderir ve bunları daha sonra alır.


#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

Açıklamalar

bir MessageQueue örnekte ayarının MessagePropertyFilter ayarlanması, bir iletiye göz atılırken veya alınırken alınan özellik kümesini denetler. Filtre, ileti bilgilerini alan örneğinde MessageQueue ayarlanır. Boole değerli bir MessagePropertyFilter üyeyi olarak falseayarladığınızda, ilişkili Message özelliğin bilgilerinin tarafından MessageQueuealınmasını engellersiniz.

Boole değerleri olmayan birkaç filtre özelliği vardır. Bunlar, , Message.ExtensionMessage.Labelveya varsayılan boyutlarını alan veya ayarlayan tamsayı değerleridirMessage.Body.

Kuyruktan daha az miktarda veri aktarıldığından, sınırlı bir özellik kümesinin alınması performansı iyileştirmeye yardımcı olur.

üzerinde MessagePropertyFilterbir özellik ayarlarken, yalnızca bir ileti alındığında veya göz atıldığında bu özelliğin alınıp alınmayacağını belirtirsiniz. için Messageilişkili özellik değerini değiştirmeyeceksiniz.

Oluşturucu tüm MessagePropertyFilter filtre özelliklerini varsayılan değerlerine ayarlar; Boole değerleri için ise olur false. Tamsayı değerli özelliklere atanan varsayılanlar için oluşturucu konusuna bakın.

Oluşturucular

MessagePropertyFilter()

sınıfının yeni bir örneğini MessagePropertyFilter başlatır ve tüm özellikler için varsayılan değerleri ayarlar.

Özellikler

AcknowledgeType

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını AcknowledgeType belirten bir değer alır veya ayarlar.

Acknowledgment

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını Acknowledgment belirten bir değer alır veya ayarlar.

AdministrationQueue

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını AdministrationQueue belirten bir değer alır veya ayarlar.

AppSpecific

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını AppSpecific belirten bir değer alır veya ayarlar.

ArrivedTime

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını ArrivedTime belirten bir değer alır veya ayarlar.

AttachSenderId

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını AttachSenderId belirten bir değer alır veya ayarlar.

Authenticated

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını Authenticated belirten bir değer alır veya ayarlar.

AuthenticationProviderName

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını AuthenticationProviderName belirten bir değer alır veya ayarlar.

AuthenticationProviderType

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını AuthenticationProviderType belirten bir değer alır veya ayarlar.

Body

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını Body belirten bir değer alır veya ayarlar.

ConnectorType

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını ConnectorType belirten bir değer alır veya ayarlar.

CorrelationId

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını CorrelationId belirten bir değer alır veya ayarlar.

DefaultBodySize

Varsayılan gövde arabelleğinin boyutunu bayt cinsinden alır veya ayarlar.

DefaultExtensionSize

Varsayılan uzantı arabelleğinin boyutunu bayt cinsinden alır veya ayarlar.

DefaultLabelSize

Varsayılan etiket arabelleğinin boyutunu bayt cinsinden alır veya ayarlar.

DestinationQueue

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını DestinationQueue belirten bir değer alır veya ayarlar.

DestinationSymmetricKey

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını DestinationSymmetricKey belirten bir değer alır veya ayarlar.

DigitalSignature

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını DigitalSignature belirten bir değer alır veya ayarlar.

EncryptionAlgorithm

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını EncryptionAlgorithm belirten bir değer alır veya ayarlar.

Extension

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını Extension belirten bir değer alır veya ayarlar.

HashAlgorithm

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını HashAlgorithm belirten bir değer alır veya ayarlar.

Id

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını Id belirten bir değer alır veya ayarlar.

IsFirstInTransaction

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını IsFirstInTransaction belirten bir değer alır veya ayarlar.

IsLastInTransaction

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını IsLastInTransaction belirten bir değer alır veya ayarlar.

Label

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını Label belirten bir değer alır veya ayarlar.

LookupId

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını LookupId belirten bir değer alır veya ayarlar.

MessageType

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını MessageType belirten bir değer alır veya ayarlar.

Priority

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını Priority belirten bir değer alır veya ayarlar.

Recoverable

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını Recoverable belirten bir değer alır veya ayarlar.

ResponseQueue

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını ResponseQueue belirten bir değer alır veya ayarlar.

SenderCertificate

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını SenderCertificate belirten bir değer alır veya ayarlar.

SenderId

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını SenderId belirten bir değer alır veya ayarlar.

SenderVersion

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını SenderVersion belirten bir değer alır veya ayarlar.

SentTime

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını SentTime belirten bir değer alır veya ayarlar.

SourceMachine

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını SourceMachine belirten bir değer alır veya ayarlar.

TimeToBeReceived

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını TimeToBeReceived belirten bir değer alır veya ayarlar.

TimeToReachQueue

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını TimeToReachQueue belirten bir değer alır veya ayarlar.

TransactionId

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını TransactionId belirten bir değer alır veya ayarlar.

TransactionStatusQueue

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını TransactionStatusQueue belirten bir değer alır veya ayarlar.

UseAuthentication

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını UseAuthentication belirten bir değer alır veya ayarlar.

UseDeadLetterQueue

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını UseDeadLetterQueue belirten bir değer alır veya ayarlar.

UseEncryption

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını UseEncryption belirten bir değer alır veya ayarlar.

UseJournalQueue

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını UseJournalQueue belirten bir değer alır veya ayarlar.

UseTracing

İletiyi alırken veya göz atırken özellik bilgilerinin alınıp alınmayacağını UseTracing belirten bir değer alır veya ayarlar.

Yöntemler

ClearAll()

Tüm Boole filtresi değerlerini olarak falseayarlar, böylece ileti alınırken ileti özellikleri alınmaz.

Clone()

Nesnenin sığ bir kopyasını oluşturur.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
SetAll()

İleti alınırken tüm ileti özelliklerinin alınmasını belirtir.

SetDefaults()

Ortak Message Queuing özelliklerinin filtre değerlerini olarak true ve tamsayı değerli özellikleri varsayılan değerlerine ayarlar.

ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Şunlara uygulanır

Ayrıca bkz.