连接到远程domino/Louthnotes服务器,使用C#发送/检索用户邮件、联系人等

本文关键字:用户 检索 发送 联系人 使用 domino Louthnotes 服务器 连接 | 更新日期: 2023-09-27 18:26:03

我正在尝试使用C#/.Net创建一个web服务,该服务可以远程访问任何用户的lotus notes邮箱、联系人等。这提供了我想要发送邮件、创建联系人等的服务器地址和用户名/密码详细信息。很像使用EWS管理的API交换帐户。我目前正在为此使用interop.domino.dll。到目前为止,它还没有对我起作用。

var session = new NotesSession();
session.InitializeUsingNotesUserName("username", "password");
var db = session.GetDatabase( "server", "xyz.nsf", false ); 

抛出异常,称"用户不是服务器"或

"读取服务器配置失败"

我是一个完全的莲花新手,任何帮助都将不胜感激。

连接到远程domino/Louthnotes服务器,使用C#发送/检索用户邮件、联系人等

您混合了服务器和客户端访问NotesSession的方式。你有两个选择:

  1. 客户端

    session.Initialize("password");session.Initialize();

    安装Notes客户端并使用Initialize()。如果客户端已启动,则无需提供密码。如果客户端未启动,则会出现密码查询。客户端正在使用配置的notes.id,并且需要该密码。您可以创建一个超级用户id,它能够访问所有邮件文件,并且您可以自己进行身份验证。初始化(NotesSession-LotusScript®)

    这也应该在服务器上运行,但从未尝试过。

  2. 服务器方式

    session.InitializeUsingNotesUserName("username", "password");

    我从来没有尝试过,但错误地使用了这个方法,所以我知道在客户端使用它是一个错误。

    理论上:安装Domino服务器并使用用户的用户名和http密码来识别该用户。如果你在计算机上混合使用Notes客户端和服务器,我不知道dll是否找到正确的安装。理论上,这可以由路径变量控制,dll可以通过路径访问可执行文件。InitializeUsingNotesUserName(NotesSession-LotusScript®)

    Windows客户端上的Domino服务器:出于测试目的,您可以在Windows客户端上安装Domino服务器,由于Windows客户端的原因,服务器的网络连接有限,但它可用于开发。请记住Microsoft和IBM的EULA。

interop.domino.dll不再是IBM关注的焦点。因此,请考虑Richard Schwartz所说的内容,并将重点放在现有的REST API上,或者将您自己的web服务编写为Notes数据库,并将其作为web服务从C#访问。