C# 向消息数组添加消息

C# 向消息数组添加消息,c#,msmq,message-queue,C#,Msmq,Message Queue,如果我声明了一个消息数组,并且我还有一个MessageEnumerator,那么如何将枚举器的当前消息添加到数组中 Message[] m = null; MessageEnumerator me = q.GetMessageEnumerator2(); for (int i = 0; i < 10; i++) { me.MoveNext(); Array.Resize(ref m, m.Length + 1); m[m.Length

如果我声明了一个消息数组,并且我还有一个MessageEnumerator,那么如何将枚举器的当前消息添加到数组中

Message[] m = null;
MessageEnumerator me = q.GetMessageEnumerator2();
for (int i = 0; i < 10; i++)
    {
        me.MoveNext();
        Array.Resize(ref m, m.Length + 1);
        m[m.Length - 1] = // the current message?
        me.RemoveCurrent();    
     }
消息[]m=null;
MessageEnumerator me=q.getMessageEnumerator 2();
对于(int i=0;i<10;i++)
{
我;
调整数组大小(参考m,m.长度+1);
m[m.Length-1]=//当前消息?
me.RemoveCurrent();
}
有什么建议吗


谢谢

将邮件放入列表,然后将其转换为数组:

List<Message> ml = new List<Message>();

MessageEnumerator me = q.GetMessageEnumerator2();

for (int i = 0; i < 10; i++)
{
    me.MoveNext();
    ml.Add(me.Current);
}

Message[] m = ml.ToArray();
您甚至可以将
IEnumerator
直接放入一个新列表中,但这个列表太紧了,根本没有意义了:

List<Message> ml = new List<Message>(q.GetMessageEnumerator2());
Message[] m = ml.ToArray();
List ml=新列表(q.GetMessageEnumerator2());
消息[]m=ml.ToArray();

谢谢,应该可以排序了。我这样做是因为我只想添加10条消息
List<Message> ml = new List<Message>(q.GetMessageEnumerator2());
Message[] m = ml.ToArray();