MessageQueueCriteria Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Filtra as filas de mensagens ao realizar uma consulta usando o MessageQueue método da GetPublicQueues() classe.
public ref class MessageQueueCriteria
public class MessageQueueCriteria
type MessageQueueCriteria = class
Public Class MessageQueueCriteria
- Herança
-
MessageQueueCriteria
Exemplos
O exemplo seguinte percorre as filas de mensagens e mostra o caminho de cada fila criada no último dia e que existe no computador "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
Observações
A MessageQueue aula fornece vários métodos que lhe permitem filtrar a sua pesquisa por filas públicas na rede. Métodos específicos para filtrar por etiqueta de fila, categoria ou localização do servidor são , GetPublicQueuesByLabelGetPublicQueuesByCategory, e GetPublicQueuesByMachine.
A MessageQueueCriteria classe, quando usada com o GetPublicQueues método, permite-te refinar o teu filtro. Pode especificar critérios de pesquisa que não sejam especificamente abordados através de um dos GetPublicQueuesBymétodos *, ou por múltiplos critérios. Pode passar uma MessageQueueCriteria instância para o GetPublicQueues método para pesquisar, por exemplo, por tempos de criação ou modificação da fila, o computador onde a fila reside, o rótulo ou categoria da fila, ou qualquer combinação destas propriedades.
Ao filtrar por múltiplas propriedades, os critérios são compostos aplicando o AND operador ao conjunto de propriedades. Assim, quando especifica um valor para a CreatedAfter propriedade juntamente com a MachineName propriedade, está a pedir todas as filas que foram criadas após um tempo especificado e que residem num computador específico.
Quando defines qualquer propriedade, o método que define a propriedade também define uma flag para indicar que deve ser incluída no filtro que estás a construir. Não pode remover propriedades individuais do filtro de pesquisa. Em vez disso, removes todas as propriedades do filtro chamando ClearAll, e depois defines as propriedades que queres construir no filtro de pesquisa. ClearAll reinicia todas as propriedades para o estado padrão "não definido".
Deve definir uma propriedade antes de tentar lê-la; caso contrário, é lançada uma exceção.
Construtores
| Name | Description |
|---|---|
| MessageQueueCriteria() |
Inicializa uma nova instância da MessageQueueCriteria classe. |
Propriedades
| Name | Description |
|---|---|
| Category |
Obtém ou define a categoria pela qual filtrar as filas na rede. |
| CreatedAfter |
Obtém ou define o limite inferior da data e hora de criação da fila para filtrar as filas na rede. |
| CreatedBefore |
Obtém ou define o limite superior da data e hora de criação da fila para filtrar as filas na rede. |
| Label |
Obtém ou define o rótulo pelo qual filtrar as filas na rede. |
| MachineName |
Obtém ou define o nome do computador pelo qual filtrar as filas na rede. |
| ModifiedAfter |
Obtém ou define o limite inferior da data e hora de modificação da fila para filtrar as filas na rede. |
| ModifiedBefore |
Obtém ou define o limite superior da data e hora de modificação da fila para filtrar filas na rede. |
Métodos
| Name | Description |
|---|---|
| ClearAll() |
Limpa todas as propriedades de serem integradas num filtro e coloca todos os valores de propriedade num estado "não definido". |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |