MessagePropertyFilter Classe

Definizione

Controlla e seleziona le proprietà recuperate durante la visualizzazione o la ricezione di messaggi da una coda di messaggi.

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
Ereditarietà
MessagePropertyFilter
Attributi
Implementazioni

Esempio

L'esempio di codice seguente invia due messaggi di priorità diverse alla coda e li recupera successivamente.


#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

Commenti

L'impostazione di su un'istanza MessagePropertyFilterMessageQueue controlla il set di proprietà recuperate durante la visualizzazione o la ricezione di un messaggio. Il filtro viene impostato sull'istanza di MessageQueue che recupera le informazioni sul messaggio. Quando si imposta un MessagePropertyFilter membro con valori booleani su false, si impedisce che le informazioni della proprietà associata Message vengano recuperate da MessageQueue.

Esistono diverse proprietà di filtro che non sono valori booleani. Sono valori integer che ottengono o impostano le dimensioni predefinite di Message.Body, Message.Extensiono Message.Label.

Il recupero di un set limitato di proprietà consente di migliorare le prestazioni perché le quantità di dati più piccole vengono trasferite dalla coda.

Quando si imposta una proprietà su MessagePropertyFilter, si indica solo se tale proprietà viene recuperata quando viene ricevuto o visualizzato un messaggio. Non si sta modificando il valore della proprietà associato per .Message

Il MessagePropertyFilter costruttore imposta tutte le proprietà del filtro sui valori predefiniti, che per i valori booleani è false. Vedere l'argomento relativo al costruttore per le impostazioni predefinite assegnate alle proprietà con valori interi.

Costruttori

Nome Descrizione
MessagePropertyFilter()

Inizializza una nuova istanza della MessagePropertyFilter classe e imposta i valori predefiniti per tutte le proprietà.

Proprietà

Nome Descrizione
AcknowledgeType

Ottiene o imposta un valore che indica se recuperare AcknowledgeType le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

Acknowledgment

Ottiene o imposta un valore che indica se recuperare Acknowledgment le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

AdministrationQueue

Ottiene o imposta un valore che indica se recuperare AdministrationQueue le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

AppSpecific

Ottiene o imposta un valore che indica se recuperare AppSpecific le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

ArrivedTime

Ottiene o imposta un valore che indica se recuperare ArrivedTime le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

AttachSenderId

Ottiene o imposta un valore che indica se recuperare AttachSenderId le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

Authenticated

Ottiene o imposta un valore che indica se recuperare Authenticated le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

AuthenticationProviderName

Ottiene o imposta un valore che indica se recuperare AuthenticationProviderName le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

AuthenticationProviderType

Ottiene o imposta un valore che indica se recuperare AuthenticationProviderType le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

Body

Ottiene o imposta un valore che indica se recuperare Body le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

ConnectorType

Ottiene o imposta un valore che indica se recuperare ConnectorType le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

CorrelationId

Ottiene o imposta un valore che indica se recuperare CorrelationId le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

DefaultBodySize

Ottiene o imposta le dimensioni, in byte, del buffer del corpo predefinito.

DefaultExtensionSize

Ottiene o imposta le dimensioni, in byte, del buffer di estensione predefinito.

DefaultLabelSize

Ottiene o imposta le dimensioni, in byte, del buffer dell'etichetta predefinito.

DestinationQueue

Ottiene o imposta un valore che indica se recuperare DestinationQueue le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

DestinationSymmetricKey

Ottiene o imposta un valore che indica se recuperare DestinationSymmetricKey le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

DigitalSignature

Ottiene o imposta un valore che indica se recuperare DigitalSignature le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

EncryptionAlgorithm

Ottiene o imposta un valore che indica se recuperare EncryptionAlgorithm le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

Extension

Ottiene o imposta un valore che indica se recuperare Extension le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

HashAlgorithm

Ottiene o imposta un valore che indica se recuperare HashAlgorithm le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

Id

Ottiene o imposta un valore che indica se recuperare Id le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

IsFirstInTransaction

Ottiene o imposta un valore che indica se recuperare IsFirstInTransaction le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

IsLastInTransaction

Ottiene o imposta un valore che indica se recuperare IsLastInTransaction le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

Label

Ottiene o imposta un valore che indica se recuperare Label le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

LookupId

Ottiene o imposta un valore che indica se recuperare LookupId le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

MessageType

Ottiene o imposta un valore che indica se recuperare MessageType le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

Priority

Ottiene o imposta un valore che indica se recuperare Priority le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

Recoverable

Ottiene o imposta un valore che indica se recuperare Recoverable le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

ResponseQueue

Ottiene o imposta un valore che indica se recuperare ResponseQueue le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

SenderCertificate

Ottiene o imposta un valore che indica se recuperare SenderCertificate le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

SenderId

Ottiene o imposta un valore che indica se recuperare SenderId le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

SenderVersion

Ottiene o imposta un valore che indica se recuperare SenderVersion le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

SentTime

Ottiene o imposta un valore che indica se recuperare SentTime le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

SourceMachine

Ottiene o imposta un valore che indica se recuperare SourceMachine le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

TimeToBeReceived

Ottiene o imposta un valore che indica se recuperare TimeToBeReceived le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

TimeToReachQueue

Ottiene o imposta un valore che indica se recuperare TimeToReachQueue le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

TransactionId

Ottiene o imposta un valore che indica se recuperare TransactionId le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

TransactionStatusQueue

Ottiene o imposta un valore che indica se recuperare TransactionStatusQueue le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

UseAuthentication

Ottiene o imposta un valore che indica se recuperare UseAuthentication le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

UseDeadLetterQueue

Ottiene o imposta un valore che indica se recuperare UseDeadLetterQueue le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

UseEncryption

Ottiene o imposta un valore che indica se recuperare UseEncryption le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

UseJournalQueue

Ottiene o imposta un valore che indica se recuperare UseJournalQueue le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

UseTracing

Ottiene o imposta un valore che indica se recuperare UseTracing le informazioni sulle proprietà durante la ricezione o la visualizzazione di un messaggio.

Metodi

Nome Descrizione
ClearAll()

Imposta tutti i valori di filtro booleani su false, in modo che non vengano recuperate proprietà del messaggio durante la ricezione di un messaggio.

Clone()

Crea una copia superficiale dell'oggetto.

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
SetAll()

Specifica di recuperare tutte le proprietà del messaggio durante la ricezione di un messaggio.

SetDefaults()

Imposta i valori di filtro delle proprietà comuni di Accodamento messaggi su true e le proprietà con valori interi sui valori predefiniti.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Si applica a

Vedi anche