Bagikan melalui


MessagePropertyFilter Kelas

Definisi

Mengontrol dan memilih properti yang diambil saat mengintip atau menerima pesan dari antrean pesan.

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
Warisan
MessagePropertyFilter
Atribut
Penerapan

Contoh

Contoh kode berikut mengirimkan dua pesan prioritas yang berbeda ke antrean, dan mengambilnya kemudian.


#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

Keterangan

MessagePropertyFilter Mengatur pada MessageQueue instans mengontrol kumpulan properti yang diambil saat mengintip atau menerima pesan. Filter diatur pada instans MessageQueue yang mengambil informasi pesan. Saat Anda mengatur anggota bernilai MessagePropertyFilter Boolean ke false, Anda mencegah informasi properti terkait Message diambil oleh MessageQueue.

Ada beberapa properti filter yang bukan nilai Boolean. Mereka adalah nilai bilangan bulat yang mendapatkan atau mengatur ukuran default , Message.Body, Message.Extensionatau Message.Label.

Mengambil sekumpulan properti terbatas membantu meningkatkan performa karena jumlah data yang lebih kecil ditransfer dari antrean.

Saat mengatur properti pada MessagePropertyFilter, Anda hanya menunjukkan apakah properti tersebut diambil saat pesan diterima atau diintip. Anda tidak mengubah nilai properti terkait untuk Message.

MessagePropertyFilter Konstruktor mengatur semua properti filter ke nilai defaultnya, yang untuk nilai Boolean adalah false. Lihat topik konstruktor untuk default yang ditetapkan ke properti bernilai bilangan bulat.

Konstruktor

MessagePropertyFilter()

Menginisialisasi instans MessagePropertyFilter baru kelas dan menetapkan nilai default untuk semua properti.

Properti

AcknowledgeType

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil AcknowledgeType informasi properti saat menerima atau mengintip pesan.

Acknowledgment

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil Acknowledgment informasi properti saat menerima atau mengintip pesan.

AdministrationQueue

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil AdministrationQueue informasi properti saat menerima atau mengintip pesan.

AppSpecific

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil AppSpecific informasi properti saat menerima atau mengintip pesan.

ArrivedTime

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil ArrivedTime informasi properti saat menerima atau mengintip pesan.

AttachSenderId

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil AttachSenderId informasi properti saat menerima atau mengintip pesan.

Authenticated

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil Authenticated informasi properti saat menerima atau mengintip pesan.

AuthenticationProviderName

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil AuthenticationProviderName informasi properti saat menerima atau mengintip pesan.

AuthenticationProviderType

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil AuthenticationProviderType informasi properti saat menerima atau mengintip pesan.

Body

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil Body informasi properti saat menerima atau mengintip pesan.

ConnectorType

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil ConnectorType informasi properti saat menerima atau mengintip pesan.

CorrelationId

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil CorrelationId informasi properti saat menerima atau mengintip pesan.

DefaultBodySize

Mendapatkan atau mengatur ukuran, dalam byte, dari buffer isi default.

DefaultExtensionSize

Mendapatkan atau mengatur ukuran, dalam byte, dari buffer ekstensi default.

DefaultLabelSize

Mendapatkan atau mengatur ukuran, dalam byte, dari buffer label default.

DestinationQueue

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil DestinationQueue informasi properti saat menerima atau mengintip pesan.

DestinationSymmetricKey

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil DestinationSymmetricKey informasi properti saat menerima atau mengintip pesan.

DigitalSignature

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil DigitalSignature informasi properti saat menerima atau mengintip pesan.

EncryptionAlgorithm

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil EncryptionAlgorithm informasi properti saat menerima atau mengintip pesan.

Extension

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil Extension informasi properti saat menerima atau mengintip pesan.

HashAlgorithm

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil HashAlgorithm informasi properti saat menerima atau mengintip pesan.

Id

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil Id informasi properti saat menerima atau mengintip pesan.

IsFirstInTransaction

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil IsFirstInTransaction informasi properti saat menerima atau mengintip pesan.

IsLastInTransaction

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil IsLastInTransaction informasi properti saat menerima atau mengintip pesan.

Label

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil Label informasi properti saat menerima atau mengintip pesan.

LookupId

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil LookupId informasi properti saat menerima atau mengintip pesan.

MessageType

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil MessageType informasi properti saat menerima atau mengintip pesan.

Priority

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil Priority informasi properti saat menerima atau mengintip pesan.

Recoverable

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil Recoverable informasi properti saat menerima atau mengintip pesan.

ResponseQueue

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil ResponseQueue informasi properti saat menerima atau mengintip pesan.

SenderCertificate

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil SenderCertificate informasi properti saat menerima atau mengintip pesan.

SenderId

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil SenderId informasi properti saat menerima atau mengintip pesan.

SenderVersion

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil SenderVersion informasi properti saat menerima atau mengintip pesan.

SentTime

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil SentTime informasi properti saat menerima atau mengintip pesan.

SourceMachine

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil SourceMachine informasi properti saat menerima atau mengintip pesan.

TimeToBeReceived

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil TimeToBeReceived informasi properti saat menerima atau mengintip pesan.

TimeToReachQueue

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil TimeToReachQueue informasi properti saat menerima atau mengintip pesan.

TransactionId

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil TransactionId informasi properti saat menerima atau mengintip pesan.

TransactionStatusQueue

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil TransactionStatusQueue informasi properti saat menerima atau mengintip pesan.

UseAuthentication

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil UseAuthentication informasi properti saat menerima atau mengintip pesan.

UseDeadLetterQueue

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil UseDeadLetterQueue informasi properti saat menerima atau mengintip pesan.

UseEncryption

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil UseEncryption informasi properti saat menerima atau mengintip pesan.

UseJournalQueue

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil UseJournalQueue informasi properti saat menerima atau mengintip pesan.

UseTracing

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengambil UseTracing informasi properti saat menerima atau mengintip pesan.

Metode

ClearAll()

Mengatur semua nilai filter Boolean ke false, sehingga tidak ada properti pesan yang diambil saat menerima pesan.

Clone()

Membuat salinan objek yang dangkal.

Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetType()

Mendapatkan instans Type saat ini.

(Diperoleh dari Object)
MemberwiseClone()

Membuat salinan dangkal dari yang saat ini Object.

(Diperoleh dari Object)
SetAll()

Menentukan untuk mengambil semua properti pesan saat menerima pesan.

SetDefaults()

Mengatur nilai filter properti Antrean Pesan umum ke true dan properti bernilai bilangan bulat ke nilai defaultnya.

ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Berlaku untuk

Lihat juga