アドレス帳に連絡先を追加できますが、何らかの理由で削除できません。私が実行しているコードは次のとおりです。
String abName = "Name ofthe targetted address book";
Outlook.Folder addressBook;
if (targetFolder.Folders.OfType<Outlook.Folder>().Any(element
=> element.Name == abName))
addressBook = targetFolder.Folders[abName] as Outlook.Folder;
else
addressBook = targetFolder.Folders.Add(
abName, Outlook.OlDefaultFolders.olFolderContacts) as Outlook.Folder;
addressBook.ShowAsOutlookAB = true;
for (int i = addressBook.Items.Count - 1; i >= 0; i--)
if (!stringList.Any(element
=> element == addressBook.Items.OfType<Outlook.ContactItem>()
.ToList()[i].Email1Address))
addressBook.Items.OfType<Outlook.ContactItem>().ToList().RemoveAt(i);
アドレス帳のフェッチと文字列の照合も機能します。正確に正しい連絡先のRemoveAt行に入ります。削除を実行しても、エラーやその他のメッセージは表示されません。それでも、連絡先リストは影響を受けません。
- なんで?
- 連絡先を実際に削除するにはどうすればよいですか?
連絡先を含む実際のリストのコピーに取り組んでいる可能性があると思います。問題は、Listを作成しないと、連絡先のリストを変更する方法がわからないことです。
したがって、最も役立つ答えは、特定の条件を指定して変更する方法addressBook
(またはおそらく) に光を当てることです。addressBook.Items
たとえば、名前が文字「Q」で始まるすべての定数を削除したいとします。
現時点では、非常に醜い回避策しか思い浮かびません。直腸が非常に醜いので、ここでは言及しません。本当に醜い...