1

我正在使用 WCF 在我的 Silverlight 应用程序(Visual Studio 2010,C#)中阅读电子邮件 (IMAP)。我创建了一个读取电子邮件的函数,它接受一个可以是收件箱、发件箱或草稿的字符串参数,我如何在我的myFunctionCompleted函数中理解我的输入参数是myFunctionAsync什么?

例如我打电话:

ReadMailAsync("inbox");
ReadMailAsync("outbox");

我应该打ReadMailCompleted两次电话(每次打电话ReadMailAsync)吗?如何区分我的ReadMailCompleted以便我可以读取正确的结果?

4

1 回答 1

2

您可以在调用时将文件夹作为 asyncState 对象传递ReadMailAsync

var folder = "inbox";
ReadMailAsync(folder, folder);

asyncState 对象将在ReadMailCompleted处理程序中返回给您:

void OnReadMailCompleted(object sender, ReadMailCompletedEventArgs e)
{
    var folder = e.Result.AsyncState as string; //now you have the input parameter...
}
于 2012-06-09T16:56:53.413 回答