c#发送后如何获取邮件名称(uid)

时间:2013-04-10 08:08:21

标签: c# .net email smtp

我想阅读电子邮件名称。

例如: “281a87c6-9d53-4122-99a1-87c2b4fb4259.eml”

如何获取邮件名称(281a87c6-9d53-4122-99a1-87c2b4fb4259)

   smtp.DeliveryMethod = SmtpDeliveryMethod.SpecifiedPickupDirectory;
     smtp.PickupDirectoryLocation = @"C:\Temp";
     smtp.Send(message); 
...

1 个答案:

答案 0 :(得分:0)

您可以在C:\Temp目录中阅读所有电子邮件文件名,如下所示: -

DirectoryInfo dirInfo = new DirectoryInfo(@"C:\Temp");
foreach (FileInfo fInfo in dirInfo.GetFiles("*.eml*"))
{
     Console.WriteLine(fInfo.Name);
}
Console.Read();

您可能会在该目录中获取最新创建的文件,该文件会为您提供上次发送的电子邮件,但我不确定您要实现的是什么: -

var file = (from f in dirInfo.GetFiles("*.eml*")
             orderby f.LastWriteTime descending
             select f).First();

哪会在C:\Temp目录中返回最新创建的电子邮件(例如您刚发送的电子邮件)。