Microsoft Exchange WebServices约会IsRecurring& AppointmentType

时间:2017-08-07 18:16:47

标签: c# exchange-server exchangewebservices appointment

我目前正在开发一个使用Microsoft Exchange WebServices的应用程序,我对Appointment.IsRecurring属性和Appointment.AppointmentType属性感到有点困惑。

根据MSDN上的这篇文章:https://msdn.microsoft.com/en-us/library/office/dd633700(v=exchg.80).aspx,如果约会类型不是RecurringMasterOccurrenceException(即Single),那么预约不是定期会议。

根据MSDN上的这篇文章:https://msdn.microsoft.com/en-us/library/microsoft.exchange.webservices.data.appointment.isrecurring(v=exchg.80).aspxIsRecurring属性说明约会是否经常发生。

但是,我有一些代码可以检查约会是否重复,然后检查约会类型是什么:

if (appointment.IsRecurring)
{
    if (appointment.AppointmentType == AppointmentType.RecurringMaster)
    {

    }
    else if (appointment.AppointmentType == AppointmentType.Single)
    {
        //shouldn't happen
    }
    else if (appointment.AppointmentType == AppointmentType.Occurrence || appointment.AppointmentType == AppointmentType.Exception)
    {

    }
}

出于某种原因,我遇到了许多被标记为IsRecurring的约会,但他们的约会类型是AppointmentType.Single

这里的任何人都能指出为什么我面临这个“问题”,根据一个属性,它是一个定期会议而根据另一个属性不是吗?

我创建了定期会议,更改了会议的一个实例,并检查了类型,但它正确地显示为AppointmentType.Exception

我很感谢您就此事提出的所有意见/指导。

干杯。

凯文

1 个答案:

答案 0 :(得分:0)

道歉,我无法说明发生这种情况的实际原因,但在我的测试中,如果我在Outlook日历GUI中,我通过按住CTRL键复制一个定期会议的一个实例然后单击并拖动它,结果是该特定约会的非重复副本,但由于某种原因,该副本仍保留IsRecurring标志,并且AppointmentType为Single。

所以,这并不是它背后的原因,但可能是你所看到的部分原因。我同意这看起来很奇怪。