【发布时间】:2010-10-10 19:50:48
【问题描述】:
我即将将 IMAP 电子邮件集成添加到我们的一个 Web 应用程序(ASP.NET / SQL Server)。我已经在使用commercial library,它公开了最重要的 IMAP 功能:获取文件夹列表、获取邮件标题、获取 mime 消息等)
从 IMAP 服务器“实时”获取电子邮件数据效果很好。但困难的任务来了:我必须保持电子邮件/文件夹缓存 SQL 数据库与 IMAP 服务器同步(我必须显示应用不同标准的数据)。
我们的数据库架构本质上包含一个“文件夹”和一个“电子邮件”表。 “电子邮件”表主要包含标题信息,如“FromAddress”、“FromName”、“IsRead”、“IsAnswered”、“IsForwarded”、“HasAttachments”等(没有电子邮件内容或附件) .
我必须考虑两个主要场景:
- 第一次(或在用户重新组织文件夹后)获取所有消息
- 获取新消息/最近消息
考虑到性能是主要的设计标准(我不能每次连接时都查询/比较数千条消息,在以查明用户是否移动或删除了一些旧电子邮件)。
谢谢!
【问题讨论】:
标签: email synchronization imap