MessagePropertyFilterとは? わかりやすく解説

MessagePropertyFilter クラス

メッセージ キューからメッセージをピークまたは受信するときに取得されるプロパティを制御および選択します。

名前空間: System.Messaging
アセンブリ: System.Messaging (system.messaging.dll 内)
構文構文

Public Class MessagePropertyFilter
    Implements ICloneable
Dim instance As MessagePropertyFilter
public class MessagePropertyFilter : ICloneable
public ref class MessagePropertyFilter : ICloneable
public class MessagePropertyFilter implements
 ICloneable
public class MessagePropertyFilter implements
 ICloneable
解説解説

MessageQueue インスタンスの MessagePropertyFilter の設定により、メッセージのピーク時、または受信時に取得されるプロパティのセットが決まります。このフィルタは、メッセージ情報を取得する MessageQueue のインスタンスで設定されます。MessagePropertyFilter のブール値メンバを false に設定すると、関連付けられた Message プロパティの情報が MessageQueue によって取得されなくなります。

ブール値でないフィルタ プロパティがいくつかあります。これらは整数値であり、Message.Body、Message.Extension、または Message.Label の既定のサイズを取得または設定します。

制限されたプロパティのセットを取得すると、キューから転送されるデータの量が少なくなるためパフォーマンスが向上します。

MessagePropertyFilter のプロパティを設定すると、メッセージの受信時、またはピーク時に、そのプロパティが取得されるかどうかだけを示すことができます。Message の関連付けられたプロパティ値は変更されません。

MessagePropertyFilter コンストラクタは、すべてのフィルタ プロパティをその既定値に設定します。ブール値は false に設定されます。整数値プロパティに割り当てられる既定値については、コンストラクタのトピックを参照してください。

使用例使用例

優先度が異なる 2 つのメッセージをキューに送信し、順番に取得するコード例を次に示します。

Imports System
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 'Main
      
      
      

      ' 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 'SendMessage
      
      
      

      ' 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 'ReceiveMessage
   End Class 'MyNewQueue

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;
        }
    }
}
#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;
}
package MyProject;

import System.*;
import System.Messaging.*;

/// <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(String[]
 args)
    {
        // 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;
    } //main

    //**************************************************
    // 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.CompareTo(MessagePriority.Normal) > 0)
 {
            myMessage.set_Body("High Priority: " + messageBody);
        }
        else {
            myMessage.set_Body(messageBody);
        }
        // Set the priority of the message.
        myMessage.set_Priority(priority);
        // Send the Order to the queue.
        myQueue.Send(myMessage);
        return;
    } //SendMessage

    //**************************************************
    // 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.get_MessageReadPropertyFilter().set_Priority(true);
        // Set the formatter to indicate body contains a string.
        myQueue.set_Formatter(new XmlMessageFormatter(new
 Type[]
            { String.class.ToType() }));
        try {
            // Receive and format the message. 
            Message myMessage = myQueue.Receive();
            // Display message information.
            Console.WriteLine("Priority: " + myMessage.get_Priority().ToString());
            Console.WriteLine("Body: " + myMessage.get_Body().ToString());
        }
        catch (MessageQueueException exp) {
            // Handle Message Queuing exceptions.
        }            
        // Handle invalid serialization format.
        catch (InvalidOperationException e) {
            Console.WriteLine(e.get_Message());
        }
        // Catch other exceptions as necessary.
        return;
    } //ReceiveMessage
} //MyNewQueue
継承階層継承階層
System.Object
  System.Messaging.MessagePropertyFilter
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
MessagePropertyFilter メンバ
System.Messaging 名前空間
MessageQueue
MessageQueue.MessageReadPropertyFilter
Message クラス

MessagePropertyFilter コンストラクタ

MessagePropertyFilter クラスの新しいインスタンスを初期化し、すべてのプロパティを既定値に設定します。

名前空間: System.Messaging
アセンブリ: System.Messaging (system.messaging.dll 内)
構文構文

Dim instance As New MessagePropertyFilter
public MessagePropertyFilter ()
public:
MessagePropertyFilter ()
public MessagePropertyFilter ()
public function MessagePropertyFilter ()
解説解説

MessagePropertyFilter コンストラクタはすべてのブール値を false に設定し、整数値プロパティを次の表に示す既定値に設定します。

プロパティ

既定値

DefaultBodySize

1024

DefaultExtensionSize

255

DefaultLabelSize

255

使用例使用例

MessagePropertyFilter コンストラクタの使用方法を示すコード例を次に示します。

// Assign the queue a new MessageReadPropertyFilter.
queue.MessageReadPropertyFilter = new MessagePropertyFilter();
// Assign the queue a new MessageReadPropertyFilter.
queue->MessageReadPropertyFilter = 
    gcnew MessagePropertyFilter;

// Assign the queue a new MessageReadPropertyFilter.
queue.set_MessageReadPropertyFilter(new MessagePropertyFilter());
.NET Framework のセキュリティ.NET Framework のセキュリティ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

MessagePropertyFilter プロパティ


パブリック プロパティパブリック プロパティ

  名前 説明
パブリック プロパティ UseTracing メッセージを受信またはピークするときに Message.UseTracing プロパティ情報を取得するかどうかを示す値を取得または設定します。
参照参照

関連項目

MessagePropertyFilter クラス
System.Messaging 名前空間
MessageQueue
MessageQueue.MessageReadPropertyFilter
Message クラス

MessagePropertyFilter メソッド


パブリック メソッドパブリック メソッド

プロテクト メソッドプロテクト メソッド
参照参照

関連項目

MessagePropertyFilter クラス
System.Messaging 名前空間
MessageQueue
MessageQueue.MessageReadPropertyFilter
Message クラス

MessagePropertyFilter メンバ

メッセージ キューからメッセージをピークまたは受信するときに取得されるプロパティを制御および選択します。

MessagePropertyFilter データ型で公開されるメンバを以下の表に示します。


パブリック コンストラクタパブリック コンストラクタ
  名前 説明
パブリック メソッド MessagePropertyFilter MessagePropertyFilter クラスの新しいインスタンスを初期化し、すべてのプロパティを既定値に設定します。
パブリック プロパティパブリック プロパティ
  名前 説明
パブリック プロパティ UseTracing メッセージを受信またはピークするときに Message.UseTracing プロパティ情報を取得するかどうかを示す値を取得または設定します。
パブリック メソッドパブリック メソッド
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

MessagePropertyFilter クラス
System.Messaging 名前空間
MessageQueue
MessageQueue.MessageReadPropertyFilter
Message クラス



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「MessagePropertyFilter」の関連用語

MessagePropertyFilterのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



MessagePropertyFilterのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS