1

以下は、定期的な会議の発生を変更および削除するためのリンクです。

http://msdn.microsoft.com/en-us/library/exchange/dd633618(v=exchg.80).aspx

私の質問は、ews からオカレンス番号を取得する方法、またはそれを見つける方法があるかどうかです。

Appointment occurrence = Appointment.BindToOccurrence(service, new ItemId(sRecurringMasterId), 3);

上記のコードでは、オカレンス番号が 3 としてハードコードされていますが、この情報を動的に取得するにはどうすればよいですか?

4

1 に答える 1

0

直接的な方法はありません。私がしていることは次のとおりです。

  1. RecurringMaster として予定を取得します。
  2. 繰り返しの開始時刻と終了時刻を定義します。永遠に続くように終了時刻がない場合は、検索する日数を定義します
  3. 以前のタイミングに基づいて予定を検索
  4. タイプ AppointmentType.Occurrence に基づいて結果をフィルタリングし、得られたものを数えます

次のコードは、私が上に書いたことを説明しています。

var occurrencesCounter = 0;  
if (appointment.AppointmentType == AppointmentType.RecurringMaster) 
{ 
    appointments = ppointment.Service.FindAppointments(WellKnownFolderName.Calendar, new CalendarView(appointment.Start, (appointment.Recurrence.EndDate == null ? DateTime.Today.AddDays(7) : (DateTime)appointment.Recurrence.EndDate)));
    foreach (var apt in appointments)
    {
        if (apt.AppointmentType == AppointmentType.Occurrence)
        {
            occurrencesCounter++;
        }
    } 
} 
于 2013-04-09T14:13:38.340 に答える