从SQL Server导入/同步联系人到Outlook

时间:2010-01-11 22:04:34

标签: c# sql-server outlook

基本上我有一个SQL Server(2008)数据库,其中包含联系信息(以及其他内容),并且希望能够在Outlook中查看这些联系人。必须至少支持Outlook 2003。 Outlook客户端已连接到Exchange,因此在Exchange中提供联系人(然后可通过Outlook查看)也可以正常工作。

同步或导入将是单向的,从数据库到Outlook / Exchange,因此Outlook / Exchange中的联系人可能是只读的(或者在导入期间可能会丢弃更改)。

我认为最好的情况是Outlook / Exchange会实时从数据库中读取,因此如果对数据库进行了更改,则在访问它们时它们会立即可见。但是,如果这是不可能的(我怀疑它不是这样),用户可以单击一个按钮,同步可能会定期发生,也可能发生在Outlook启动时。

不一定要寻找完整的解决方案,只考虑采用的方法,以及任何包含基本代码示例的资源。

4 个答案:

答案 0 :(得分:1)

您可以使用多种技术:

此外,还有围绕Office对象模型和Outlook的客户端技术,但这些技术会将联系人添加到单个Outlook通讯簿中,而不是添加到中央交换存储区(即整个组织不可用)。

答案 1 :(得分:1)

答案 2 :(得分:0)

您可以查看Outlook 2003 VBA来执行此操作。很多年前我使用(误用?)Outlook VBA从数据库中读取一些数据。我不知道VBA会给你多远(每个用户都必须在他们的Outlook客户端上安装VBA代码),但无论如何它都是一个开始寻找的地方。

答案 3 :(得分:0)

在寻找类似问题的答案时,我发现this aswel 它是C#中一个完整编写的工作示例,具有以下功能:

  1. 从数据库将联系人导入Outlook。
  2. 将联系人从Outlook导出到数据库。
  3. 在Outlook和数据库之间同步联系人。
  4. 另外三个代码示例:
    Outlook Contacts Sync SQL
    Moving Data to Outlook from SQL
    将Outlook耦合到SQL Server

    here另一个网站,其中包含有关如何连接这两者的更多常规信息。