我已经创建了一个如此处所述的地址簿,它就像一个魅力。然后我想访问它 - 首先检查它是否存在(并在相反的情况下创建它),然后引用它。
我当前的代码依赖于Exception
检测丢失的名称文件夹,在我看来,这是一个丑陋的解决方法。我还没有找到一个更整洁的方法,比如 eg.DoesFolderExist
或这样的。我想得到一个关于如何改进它的建议。
Outlook.Folder contacts =
this.Application.Session.GetDefaultFolder(
Outlook.OlDefaultFolders.olFolderContacts) as Outlook.Folder;
Outlook.Folder addressBook = null;
try { addressBook = contacts.Folders["My AB"] as Outlook.Folder; }
catch (Exception) { }
if (addressBook == null)
{
addressBook = contacts.Folders.Add("My AB",
Outlook.OlDefaultFolders.olFolderContacts) as Outlook.Folder;
addressBook.ShowAsOutlookAB = true;
}
我应该this.Application.Session.GetFolderFromID(...)
改用吗?问题是我需要指定通讯簿的名称(我有)和商店 ID(我没有)。我不想去那里,但该方法的语法GetFolderFromID
表明可能有两个不同的地址簿名称相同,但放置在不同的商店中。是这样还是contact.Folder["name"]
以上就足够了?