E-N*_*uff 3 c# exchangewebservices
我想删除Appointments通过EWS但它不起作用.我有以下代码:
private void deleteAppointment(object obj)
{
ServicePointManager.ServerCertificateValidationCallback = CertificateValidationCallBack;
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2010_SP2);
service.Credentials = new WebCredentials(CredentialCache.DefaultNetworkCredentials);
service.AutodiscoverUrl("user@place.com", RedirectionUrlValidationCallback);
ItemId ii = (ItemId)obj;
Appointment a = Appointment.Bind(service, ii);
try
{
a.Delete(DeleteMode.MoveToDeletedItems);
}
catch (ServiceResponseException ex)
{
MessageBox.Show(ex.Message);
}
}
Run Code Online (Sandbox Code Playgroud)
登录到机器上的用户(我)是来自user地址的日历的所有者.但是,如果我尝试删除Appointment的Exception是"对象不能被删除".这ItemId是对的.如果我使用user地址,Credentials它的工作原理.
要使用DeleteMode.MoveToDeletedItems,除了访问Calendar文件夹之外,还需要对DeletedItems文件夹的写访问权限.如果您不想将文件夹权限添加到"已删除邮件"文件夹,则可以使用DeleteMode.HardDelete或DeleteMode.SoftDelete.