MessagePropertyFilter クラス
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
メッセージ キューからメッセージをピークまたは受信するときに取得されるプロパティを制御および選択します。
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
- 継承
-
MessagePropertyFilter
- 属性
- 実装
次のコード例では、キューに異なる優先順位の 2 つのメッセージを送信し、その後それらを取得します。
#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
MessagePropertyFilterインスタンスに を設定すると、MessageQueueメッセージのピーク時または受信時に取得されるプロパティのセットが制御されます。 フィルターは、メッセージ情報を取得する の MessageQueue インスタンスに設定されます。 ブール値メンバーを MessagePropertyFilter に false
設定すると、関連付けられている Message プロパティの情報が によって取得されないようにします MessageQueue。
ブール値ではないフィルター プロパティがいくつかあります。 これらは、または Message.Labelの既定のサイズを取得または設定するMessage.BodyMessage.Extension整数値です。
限られたプロパティ セットを取得すると、キューから転送されるデータの量が少なくなるため、パフォーマンスが向上します。
に MessagePropertyFilterプロパティを設定する場合、そのプロパティがメッセージの受信時またはピーク時に取得されるかどうかを示すだけです。 に関連付けられているプロパティ値を Message変更していません。
コンストラクターは MessagePropertyFilter 、すべてのフィルター プロパティを既定値に設定します。ブール値の場合は です false
。 整数値のプロパティに割り当てられる既定値については、コンストラクターのトピックを参照してください。
Message |
MessagePropertyFilter クラスの新しいインスタンスを初期化し、すべてのプロパティを既定値に設定します。 |
Acknowledge |
メッセージを受信またはピークするときに AcknowledgeType プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Acknowledgment |
メッセージを受信またはピークするときに Acknowledgment プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Administration |
メッセージを受信またはピークするときに AdministrationQueue プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
App |
メッセージを受信またはピークするときに AppSpecific プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Arrived |
メッセージを受信またはピークするときに ArrivedTime プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Attach |
メッセージを受信またはピークするときに AttachSenderId プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Authenticated |
メッセージを受信またはピークするときに Authenticated プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Authentication |
メッセージを受信またはピークするときに AuthenticationProviderName プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Authentication |
メッセージを受信またはピークするときに AuthenticationProviderType プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Body |
メッセージを受信またはピークするときに Body プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Connector |
メッセージを受信またはピークするときに ConnectorType プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Correlation |
メッセージを受信またはピークするときに CorrelationId プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Default |
本文バッファーの既定サイズ (バイト数) を取得または設定します。 |
Default |
拡張バッファーの既定サイズ (バイト数) を取得または設定します。 |
Default |
ラベル バッファーの既定サイズ (バイト数) を取得または設定します。 |
Destination |
メッセージを受信またはピークするときに DestinationQueue プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Destination |
メッセージを受信またはピークするときに DestinationSymmetricKey プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Digital |
メッセージを受信またはピークするときに DigitalSignature プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Encryption |
メッセージを受信またはピークするときに EncryptionAlgorithm プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Extension |
メッセージを受信またはピークするときに Extension プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Hash |
メッセージを受信またはピークするときに HashAlgorithm プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Id |
メッセージを受信またはピークするときに Id プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Is |
メッセージを受信またはピークするときに IsFirstInTransaction プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Is |
メッセージを受信またはピークするときに IsLastInTransaction プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Label |
メッセージを受信またはピークするときに Label プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Lookup |
メッセージを受信またはピークするときに LookupId プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Message |
メッセージを受信またはピークするときに MessageType プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Priority |
メッセージを受信またはピークするときに Priority プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Recoverable |
メッセージを受信またはピークするときに Recoverable プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Response |
メッセージを受信またはピークするときに ResponseQueue プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Sender |
メッセージを受信またはピークするときに SenderCertificate プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Sender |
メッセージを受信またはピークするときに SenderId プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Sender |
メッセージを受信またはピークするときに SenderVersion プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Sent |
メッセージを受信またはピークするときに SentTime プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Source |
メッセージを受信またはピークするときに SourceMachine プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Time |
メッセージを受信またはピークするときに TimeToBeReceived プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Time |
メッセージを受信またはピークするときに TimeToReachQueue プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Transaction |
メッセージを受信またはピークするときに TransactionId プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Transaction |
メッセージを受信またはピークするときに TransactionStatusQueue プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Use |
メッセージを受信またはピークするときに UseAuthentication プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Use |
メッセージを受信またはピークするときに UseDeadLetterQueue プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Use |
メッセージを受信またはピークするときに UseEncryption プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Use |
メッセージを受信またはピークするときに UseJournalQueue プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Use |
メッセージを受信またはピークするときに UseTracing プロパティ情報を取得するかどうかを示す値を取得または設定します。 |
Clear |
メッセージの受信時にメッセージ プロパティが取得されないように、すべてのブール フィルター値を |
Clone() |
オブジェクトの簡易コピーを作成します。 |
Equals(Object) |
指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (継承元 Object) |
Get |
既定のハッシュ関数として機能します。 (継承元 Object) |
Get |
現在のインスタンスの Type を取得します。 (継承元 Object) |
Memberwise |
現在の Object の簡易コピーを作成します。 (継承元 Object) |
Set |
メッセージの受信時にすべてのメッセージ プロパティを取得するように指定します。 |
Set |
共通メッセージ キュー プロパティのフィルター値を |
To |
現在のオブジェクトを表す文字列を返します。 (継承元 Object) |
製品 | バージョン |
---|---|
.NET Framework | 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET に関するフィードバック
.NET はオープンソース プロジェクトです。 フィードバックを提供するにはリンクを選択します。