C#EWS删除约会不起作用

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地址的日历的所有者.但是,如果我尝试删除AppointmentException是"对象不能被删除".这ItemId是对的.如果我使用user地址,Credentials它的工作原理.

Mim*_*ntz 7

要使用DeleteMode.MoveToDeletedItems,除了访问Calendar文件夹之外,还需要对DeletedItems文件夹的写访问权限.如果您不想将文件夹权限添加到"已删除邮件"文件夹,则可以使用DeleteMode.HardDelete或DeleteMode.SoftDelete.