我想编写一个应用程序(很可能是在C#中),它检查特定帐户的电子邮件,检测附加文件并将它们分离到文件夹进行处理。
是否有标准的.NET类来执行这些任务?如果没有,我还可以使用其他什么?
该应用程序将作为服务运行。
答案 0 :(得分:1)
虽然BCL中没有用于下载电子邮件的API,但只有发送,有一个非常好的现在是微软推荐的用于发送和接收电子邮件的库,它支持POP3,IMAP,SMTP。 https://github.com/jstedfast/MailKit
检测附加文件并将其分离到文件夹进行处理
我打算假设您的意思是将文件下载到目录中。幸运的是,使用MailKit这很容易做到,图书馆的作者在这里写了一个例子:https://stackoverflow.com/a/36229918/2595033
(取自链接的代码)
foreach (var attachment in message.Attachments) {
using (var stream = File.Create ("fileName")) {
if (attachment is MessagePart) {
var part = (MessagePart) attachment;
part.Message.WriteTo (stream);
} else {
var part = (MimePart) attachment;
part.ContentObject.DecodeTo (stream);
}
}
}
该应用程序将作为服务运行。
这也很容易,您需要编写Windows服务。关于用C#编写一个资源,有很多资源。在Visual Studio中还有一个模板。