我写了一个c#程序,它保存由头列表组成的解析数据,而头列表又携带一个用String表示的id列表。
Email: List
//一个随机ID(大约100个,最多2000个)唯一标识索引中的一个头。我上传我解析的所有id到服务器,反过来搜索索引的id,删除相应的头和写一个日志文件与它删除的id和id不在索引上。
我的下一步是解析LogFile中删除的id,并在我的编译中找到等效的id,并将其头标记为已删除。
日志解析的结果是一个包含所有成功删除的id的数组。
所以它看起来像这样:
foreach(string deletedID in deletedIDs){
foreach(EMail mail in mails){
foreach(Header header in mail.headers){
if(header.Deleted == false){
for(string iD in header) {
if(deletedID == iD) header.Deleted = true;
}
}
}
}
}
我在想,是否有更有效的方法来做到这一点(甚至更多的方法)
使用Dictionary来保存使用ID
作为键和Email
或Header
作为值的数据在这里似乎是合理的。这使得你的搜索几乎是即时的