2011-11-16 96 views

回答

2

鑑於Domino服務器也在Windows上,並且它們已經爲SSO激活了SPNEGO,您可以使用多種選擇,具體取決於「檢查新郵件」的含義。

如果您想將收件箱包含在您的ASP.Net應用程序中,例如:作爲iframe,您可以使用iNotes portal mode來完成此操作。

如果您使用的是Domino 8.5.3,則可以使用REST services of the new extension library通過幾個REST調用和Json訪問收件箱內容。查看更多信息的鏈接。

如果您想要訪問ASP.Net應用程序後端的「新郵件」,您很可能不幸運,因爲關於「新/未讀」郵件的信息是按用戶存儲的,您需要用戶訪問該信息的ID-文件/密碼或http密碼。

但也許你可以提供更多的信息,所以我們可以給出更好的建議。

+0

有問題的ASPx應用程序是一個Intranet站點,在一個角落將有一個鏈接到Domino Webmail的文本[您有{n}新郵件]。我能看到的最大問題是,不會有任何SSO。 –

+0

沒有SSO,沒有辦法獲得信息,用戶擁有多少「新」郵件。 – leyrer

0

嗯,是的,你可以,但它不是一個直接的web服務調用。我不知道有任何交鑰匙配置可以實現這一點。所以,你需要「推出自己的」服務。如果是這樣,那麼你會對「未讀郵件」或「未讀郵件」感興趣。這是Lotus Notes的一項獨特功能,並未在Java或.Net中公開爲服務。但是,您可以通過在Lotus Notes對象API中使用「GetAllUnreadEntries」方法來避開它。

使用此方法,您可以以編程方式模擬它,而無需太複雜。是否可以嘗試這種方式:

您是否可以在ASP.Net應用程序中實現遍歷Domino郵件帳戶收件箱時設置的「上次檢查」日期/時間值?

現在,當循環收件箱時,獲取每個文檔的創建日期。

對於Lotus Notes數據庫中的電子郵件,這是電子郵件打到該帳戶的日期。所以它應該是確定電子郵件抵達日期的相當可靠的手段。

創建的日期屬性位於NotesDocument對象下,名稱爲「created」。這應該返回一個可以使用的日期/時間值。因此任何比「上次檢查」值更新的文檔都是新郵件。

如果您有一個特別大的收件箱循環訪問,您可以獲取收件箱對象(可以像視圖一樣處理),也可以在NotesView對象上使用「GetAllUnreadEntries」方法。

指向示例代碼的鏈接位於上面的鏈接中。