MessageQueueCriteria Klass

Definition

Filtrerar meddelandeköer när du utför en fråga med hjälp av MessageQueue klassens GetPublicQueues() -metod.

public ref class MessageQueueCriteria
public class MessageQueueCriteria
type MessageQueueCriteria = class
Public Class MessageQueueCriteria
Arv
MessageQueueCriteria

Exempel

Följande exempel itererar genom meddelandeköer och visar sökvägen till varje kö som skapades under den senaste dagen och som finns på datorn "MyComputer".

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

using namespace System;
using namespace System::Messaging;
ref class MyNewQueue
{
public:

   // Iterates through message queues and displays the
   // path of each queue that was created in the last
   // day and that exists on the computer "MyComputer". 
   void ListPublicQueuesByCriteria()
   {
      UInt32 numberQueues = 0;
      
      // Specify the criteria to filter by.
      MessageQueueCriteria^ myCriteria = gcnew MessageQueueCriteria;
      myCriteria->MachineName = "MyComputer";
      myCriteria->CreatedAfter = DateTime::Now.Subtract( TimeSpan(1,0,0,0) );
      
      // Get a cursor into the queues on the network.
      MessageQueueEnumerator^ myQueueEnumerator = MessageQueue::GetMessageQueueEnumerator( myCriteria );
      
      // Move to the next queue and read its path.
      while ( myQueueEnumerator->MoveNext() )
      {
         
         // Increase the count if priority is Lowest.
         Console::WriteLine( myQueueEnumerator->Current->Path );
         numberQueues++;
      }

      
      // Handle no queues matching the criteria.
      if ( numberQueues == 0 )
      {
         Console::WriteLine( "No public queues match criteria." );
      }

      return;
   }

};

int main()
{
   
   // Create a new instance of the class.
   MyNewQueue^ myNewQueue = gcnew MyNewQueue;
   
   // Output the count of Lowest priority messages.
   myNewQueue->ListPublicQueuesByCriteria();
   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 uses a cursor to step through the
        // message queues and list the public queues on the
        // network that specify certain criteria.
        //**************************************************

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

            // Output the count of Lowest priority messages.
            myNewQueue.ListPublicQueuesByCriteria();
                        
            return;
        }

        //**************************************************
        // Iterates through message queues and displays the
        // path of each queue that was created in the last
        // day and that exists on the computer "MyComputer".
        //**************************************************
        
        public void ListPublicQueuesByCriteria()
        {
            uint numberQueues = 0;
            
            // Specify the criteria to filter by.
            MessageQueueCriteria myCriteria = new
                MessageQueueCriteria();
            myCriteria.MachineName = "MyComputer";
            myCriteria.CreatedAfter = DateTime.Now.Subtract(new
                TimeSpan(1,0,0,0));

            // Get a cursor into the queues on the network.
            MessageQueueEnumerator myQueueEnumerator =
                MessageQueue.GetMessageQueueEnumerator(myCriteria);

            // Move to the next queue and read its path.
            while(myQueueEnumerator.MoveNext())
            {
                // Increase the count if priority is Lowest.
                Console.WriteLine(myQueueEnumerator.Current.Path);
                numberQueues++;
            }

            // Handle no queues matching the criteria.
            if (numberQueues == 0)
            {
                Console.WriteLine("No public queues match criteria.");
            }

            return;
        }
    }
}
Imports System.Messaging

 
Public Class MyNewQueue


        '
        ' Provides an entry point into the application.
        '		 
        ' This example uses a cursor to step through the
        ' message queues and list the public queues on the
        ' network that specify certain criteria.
        

        Public Shared Sub Main()

            ' Create a new instance of the class.
            Dim myNewQueue As New MyNewQueue()

            ' Output the count of Lowest priority messages.
            myNewQueue.ListPublicQueuesByCriteria()

            Return

        End Sub


        
        ' Iterates through message queues and displays the
        ' path of each queue that was created in the last
        ' day and that exists on the computer "MyComputer". 
        

        Public Sub ListPublicQueuesByCriteria()

            Dim numberQueues As Int32 = 0

            ' Specify the criteria to filter by.
            Dim myCriteria As New MessageQueueCriteria()
            myCriteria.MachineName = "MyComputer"
            myCriteria.CreatedAfter = DateTime.Now.Subtract(New _
                TimeSpan(1, 0, 0, 0))


            ' Get a cursor into the queues on the network.
            Dim myQueueEnumerator As MessageQueueEnumerator = _
                MessageQueue.GetMessageQueueEnumerator(myCriteria)

            ' Move to the next queue and read its path.
            While myQueueEnumerator.MoveNext()
                ' Increase the count if the priority is Lowest.
                Console.WriteLine(myQueueEnumerator.Current.Path)
                numberQueues += 1
            End While

            ' Handle no queues matching the criteria.
            If numberQueues = 0 Then
                Console.WriteLine("No queues match the criteria.")
            End If

            Return

        End Sub

End Class

Kommentarer

Klassen MessageQueue innehåller ett antal metoder som gör att du kan filtrera sökningen efter offentliga köer i nätverket. Specifika metoder för filtrering efter köetikett, kategori eller serverplats är GetPublicQueuesByLabel, GetPublicQueuesByCategoryoch GetPublicQueuesByMachine.

När MessageQueueCriteria klassen används med GetPublicQueues metoden kan du förfina filtret. Du kan ange sökvillkor som inte specifikt adresseras via någon av GetPublicQueuesBy* metoderna eller med flera villkor. Du kan skicka en MessageQueueCriteria instans till GetPublicQueues metoden för att söka, till exempel genom att skapa eller ändra kötider, datorn som kön finns på, köetiketten eller kategorin eller någon kombination av dessa egenskaper.

När du filtrerar efter flera egenskaper består kriterierna av att tillämpa operatorn AND på uppsättningen med egenskaper. När du anger ett värde för CreatedAfter egenskapen tillsammans med MachineName egenskapen ber du därför om alla köer som skapades efter en angiven tid och som finns på en specifik dator.

När du anger en egenskap anger metoden som anger egenskapen också en flagga som anger att den ska ingå i filtret som du skapar. Du kan inte ta bort enskilda egenskaper från sökfiltret. I stället tar du bort alla egenskaper från filtret genom att anropa ClearAlloch anger sedan de egenskaper som du vill bygga in i sökfiltret. ClearAll återställer alla egenskaper till standardtillståndet "inte inställt".

Du måste ange en egenskap innan du försöker läsa den. annars utlöses ett undantag.

Konstruktorer

Name Description
MessageQueueCriteria()

Initierar en ny instans av MessageQueueCriteria klassen.

Egenskaper

Name Description
Category

Hämtar eller anger den kategori som köer ska filtreras efter i nätverket.

CreatedAfter

Hämtar eller anger den nedre gränsen för datum och tid för att skapa kön efter vilken köer ska filtreras i nätverket.

CreatedBefore

Hämtar eller anger den övre gränsen för datum och tid för att skapa kön för att filtrera köer i nätverket.

Label

Hämtar eller anger etiketten som du vill filtrera köer i nätverket med.

MachineName

Hämtar eller anger datornamnet som ska filtrera köer i nätverket.

ModifiedAfter

Hämtar eller anger den nedre gränsen för köändringens datum och tid för att filtrera köer i nätverket.

ModifiedBefore

Hämtar eller anger den övre gränsen för köändringens datum och tid för att filtrera köer i nätverket.

Metoder

Name Description
ClearAll()

Rensar alla egenskaper från att vara inbyggda i ett filter och placerar alla egenskapsvärden i tillståndet "inte inställt".

Equals(Object)

Avgör om det angivna objektet är lika med det aktuella objektet.

(Ärvd från Object)
GetHashCode()

Fungerar som standard-hash-funktion.

(Ärvd från Object)
GetType()

Hämtar den aktuella instansen Type .

(Ärvd från Object)
MemberwiseClone()

Skapar en ytlig kopia av den aktuella Object.

(Ärvd från Object)
ToString()

Returnerar en sträng som representerar det aktuella objektet.

(Ärvd från Object)

Gäller för

Se även