2017-05-23 42 views
0

我想在C#中編寫一個簡單的api,它將用於使用Graph api從用戶的日曆中刪除事件等。是否可以使用Microsoft Graph取消事件?

我遇到的問題是我無法刪除需要取消的事件,顯然是因爲它們需要取消。但是,我無法弄清楚如何編寫一個函數來實際取消這些事件。我目前正在使用https://developer.microsoft.com/en-us/graph/docs/api-reference/beta/api/event_cancel來嘗試和取消一個事件,並且我得到了一個成功狀態代碼......但沒有任何反應。該活動未取消,並且不會從我的日曆中刪除。

任何意見或建議,非常感謝。我的代碼取消事件如下。

public async void CancelAppointment(string eventId) 
    { 
     try 
     { 
      var client = GetHttpClient(); 
      Uri targetEndpoint = new Uri("https://graph.microsoft.com/beta/me/events/" + eventId + "/cancel"); 
      string postBody = "{" + 
           "\"Comment\": \"Appointment canceled.\"" + 
           "}"; 
      var body = new StringContent(postBody, System.Text.Encoding.UTF8, "application/json"); 

      var response = await client.PostAsync(targetEndpoint, body); 
      Console.WriteLine(response.StatusCode); 

      if (response.IsSuccessStatusCode) 
      { 
       Console.WriteLine("Canceled appointment with Id: " + eventId); 
      } 
     } 
     catch (Exception e) 
     { 
      Console.WriteLine("Could not cancel appointment " + eventId + " " + e.Message); 
     } 
    } 
+0

'我得到一個成功的狀態代碼'成功後,你應該收到'202 Accepted'。您是否向請求添加承載訪問令牌? –

+0

@HamletHakobyan是的,我收到202接受。我將該承載訪問令牌添加到請求中,作爲返回HTTP客戶端的GetClient()函數的一部分。 – Parapraxis

+0

'活動未取消,並且未從我的日曆中移除'您如何觀察?你以後叫過「GET me/events/{id}」嗎? –

回答

0

這似乎已被修復。現在事件正確取消,不會對我自己的代碼進行更改。

相關問題