删除旧的Outlook约会
本文关键字:约会 Outlook 删除 | 更新日期: 2023-09-27 18:02:03
我正在研究一种程序删除旧的outlook日历约会的方法。我有这个代码,但我得到一个编译错误的"无效表达式术语"),但它看起来a -好吗?
string strCurrent;
Outlook.Application objApp;
Outlook.NameSpace objNS;
Outlook.MAPIFolder objFolder;
Outlook.Items objItems;
object objItem;
string strStart;
string strEnd;
string strFilter;
strStart = "04/01/2014";
strEnd = "04/28/2014";
strFilter = "[Start] >= " + strStart + " AND [Start] < " + strEnd;
objApp = new Outlook.Application();
objNS = objApp.GetNamespace("MAPI");
objFolder = objNS.GetDefaultFolder(olFolderCalendar);
objItems = objFolder.Items.Restrict(strFilter);
objItem = objItems.GetFirst;
if (objItem = null) { break; }
foreach (object objItem in Outlook.Items objItems) { objItem.Delete; }
objApp = null;
objNS = null;
objFolder = null;
objItems = null;
objItem = null;
foreach
的语法为
foreach(TYPE item in collection)
{
}
而你现在有
foreach(TYPE item in ANOTHER_TYPE collection)
{
}
所以你需要像
这样的东西foreach (var item in objItems)
{
}
foreach
格式不正确。你写:
foreach (object objItem in Outlook.Items objItems) { objItem.Delete; }
应该是:
foreach (object objItem in objItems) { objItem.Delete; }
除非在不期望的上下文中存在break
:
if (objItem = null) { break; }
我还建议使用反向计数器而不是foreach循环;当您删除项时,集合将被更改,这将在运行时产生问题。