如何在电子邮件到达时自动处理?

时间:2010-09-28 09:53:33

标签: c# .net wcf email process

我有当前的情况:

  1. 我的应用为每个用户生成一个 表单的有效系统电子邮件地址 让我们说:uuid@website.com
  2. 当用户遇到问题/疑问时,他可以发送 从任何地址发送电子邮件 预定义的系统电子邮件地址
  3. 应用应接收用户发送的电子邮件并进行处理(检查垃圾邮件,插入数据库)
  4. 在这种情况下,我想到的第一个解决方案是在15分钟内汇集电子邮件地址,在外部桌面应用程序(或类似应用程序)中处理它们(垃圾邮件或非垃圾邮件)并将其插入数据库

    因为我想在.net,C#,SQL server 2008中执行此操作,它应该在Web服务器上运行,使用WCF可以使用以下解决方案吗?

    • 我创建了一个WCF Web服务,当通过电子邮件地址收到电子邮件时,它会捕获它并开始处理过程。

    我从一开始就看到WCF的一个问题是我不认为它可以自动反应,直到现在我使用wcf的唯一方法只是直接调用它并接收结果。所以我认为应该在电子邮件服务器和wcf服务之间放置另一层,并且该层应该在收到某些内容时“做出反应”。

    主要想法是处理收到的电子邮件,不要定期从收件箱中取出。

    任何指针?谢谢

2 个答案:

答案 0 :(得分:1)

你是对的。 Web服务无法为您捕获任何内容。您必须调用(使用.ashx /或等)Web服务。这就是Web服务的用途。

  

应用应接收用户发送的电子邮件并进行处理

听起来您正在寻找开发电子邮件客户端;若然,那怎么样:

  • 创建电子邮件客户端应用(例如here
  • 创建一个Windows服务,以帮助处理邮件。

假设您已经定制了客户端程序,Windows服务将使用客户端,查找新消息并相应地处理它们。

对于电子邮件客户端示例,请结帐:

答案 1 :(得分:0)

如果连接到Exchange 2007 SP1或更高版本,则Exchange Web服务看起来是最佳方法:

Read MS Exchange email in C#