我正在从Lotus Notes访问邮件。
为了访问“收件箱”,我使用下面的代码:
_notesDatabase = _lotusNotesServerSession.GetDatabase(LotusNotesServer, "mail\\" + nsfName, false);
NotesView inbox = _notesDatabase.GetView("($Inbox)");
同样适用于“草稿”。
但是我在这里指定GetView方法中每个视图的名称。 哪个编码不好。
我想使用C#列出这些视图“收件箱”,“草稿”。
有人可以给我解决方案吗?
答案 0 :(得分:1)
NotesDatabase类的一个名为Views的属性允许您访问数据库中的所有视图。您可以遍历它们以访问每个视图。
此open source class called DatabaseProperties也可以帮助您获取设计文档列表,特别是数据库中的视图,以及更多视图的属性。
答案 1 :(得分:1)
解决方案是:
Object[] docColl = _notesDatabase.Views as Object[];
foreach (Object objView in docColl) {
NotesView view = objView as NotesView;
MessageBox.Show(view.Name);
}
答案 2 :(得分:0)
在VB.net中,获取所有视图(和文件夹)以及每个视图以获取所有包含文档的基本代码如下所示:
Dim s As New notesSession
Dim db As notesDatabase
Set db = s.CurrentDatabase
Dim vws As Variant
vws = db.Views
Forall v In vws
'New View being processed
Dim doc As notesDocument
Set doc = v.getFirstDocument()
While Not (doc Is Nothing)
' do something for each document
' ....
Set doc = v.getNextDocument(doc)
Wend
End Forall