MessageQueue.GetEnumerator 方法

定义

注意

This method returns a MessageEnumerator that implements RemoveCurrent family of methods incorrectly. Please use GetMessageEnumerator2 instead.

注意

此 API 现已过时。

枚举队列中的消息。Enumerates the messages in a queue. GetEnumerator() 已弃用。GetEnumerator() is deprecated. 应改用 GetMessageEnumerator2()GetMessageEnumerator2() should be used instead.

public:
 virtual System::Collections::IEnumerator ^ GetEnumerator();
public System.Collections.IEnumerator GetEnumerator ();
[System.Obsolete("This method returns a MessageEnumerator that implements RemoveCurrent family of methods incorrectly. Please use GetMessageEnumerator2 instead.")]
public System.Collections.IEnumerator GetEnumerator ();
[System.Obsolete]
public System.Collections.IEnumerator GetEnumerator ();
abstract member GetEnumerator : unit -> System.Collections.IEnumerator
override this.GetEnumerator : unit -> System.Collections.IEnumerator
[<System.Obsolete("This method returns a MessageEnumerator that implements RemoveCurrent family of methods incorrectly. Please use GetMessageEnumerator2 instead.")>]
abstract member GetEnumerator : unit -> System.Collections.IEnumerator
override this.GetEnumerator : unit -> System.Collections.IEnumerator
[<System.Obsolete>]
abstract member GetEnumerator : unit -> System.Collections.IEnumerator
override this.GetEnumerator : unit -> System.Collections.IEnumerator
Public Function GetEnumerator () As IEnumerator

返回

IEnumerator

IEnumerator,它提供与队列消息的动态连接。A IEnumerator that provides a dynamic connection to the messages in the queue.

实现

属性

示例

以下代码示例演示了 GetEnumerator 的用法。The following code example demonstrates the use of GetEnumerator.


// Connect to a queue on the local computer.
MessageQueue^ queue = gcnew MessageQueue(".\\exampleQueue");

// Get an IEnumerator object.
System::Collections::IEnumerator^ enumerator = 
    queue->GetMessageEnumerator2();

// Use the IEnumerator object to loop through the messages.
while(enumerator->MoveNext())
{
    // Get a message from the enumerator.
    Message^ msg = (Message^)enumerator->Current;

    // Display the label of the message.
    Console::WriteLine(msg->Label);
}

queue->Close();


// Connect to a queue on the local computer.
MessageQueue queue = new MessageQueue(".\\exampleQueue");

// Get an IEnumerator object.
System.Collections.IEnumerator enumerator = queue.GetEnumerator();

// Use the IEnumerator object to loop through the messages.
while(enumerator.MoveNext())
{
    // Get a message from the enumerator.
    Message msg = (Message)enumerator.Current;

    // Display the label of the message.
    Console.WriteLine(msg.Label);
}

注解

下表显示了此方法是否在各种工作组模式下可用。The following table shows whether this method is available in various Workgroup modes.

工作组模式Workgroup mode 可用Available
本地计算机Local computer Yes
本地计算机和直接格式名称Local computer and direct format name Yes
远程计算机Remote computer No
远程计算机和直接格式名称Remote computer and direct format name Yes

适用于

另请参阅