我在Outlook 2003 SP3中注册了一个约会日期,每个工作日,没有结束日期 数据存储在MS Exchange Server 2010中 如果我查询该事件的Exchange Web服务(某些详细信息),则会为每个星期一返回每周次。周五:
<Recurrence>
<WeeklyRecurrence>
<Interval>1</Interval>
<DaysOfWeek>Monday Tuesday Wednesday Thursday Friday</DaysOfWeek>
</WeeklyRecurrence>
<NoEndRecurrence>
<StartDate>2012-12-03+01:00</StartDate>
</NoEndRecurrence>
</Recurrence>
从技术上讲,这些都是相同的日子,但我将其存储在另一个系统中,并希望Outlook每日预约也作为每日预约显示在那里; - )
这是一个已知的问题吗? 可以采取任何措施来防止这种情况发生吗? [我不能将“每周周一至周五”转换回“每日工作日”,因为这会修改“真正的”“每周周一至周五”预约]
感谢
扬
完整请求:
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:typ="http://schemas.microsoft.com/exchange/services/2006/types"
xmlns:mes="http://schemas.microsoft.com/exchange/services/2006/messages">
<soapenv:Header>
<typ:RequestServerVersion Version="Exchange2007_SP1"/>
<typ:MailboxCulture>en-US</typ:MailboxCulture>
</soapenv:Header>
<soapenv:Body>
<mes:GetItem>
<mes:ItemShape>
<typ:BaseShape>IdOnly</typ:BaseShape>
<typ:BodyType>Text</typ:BodyType>
<typ:AdditionalProperties>
<typ:FieldURI FieldURI="item:Subject" />
<typ:FieldURI FieldURI="item:ReminderIsSet" />
<typ:FieldURI FieldURI="item:ReminderMinutesBeforeStart" />
<typ:FieldURI FieldURI="calendar:Location" />
<typ:FieldURI FieldURI="calendar:IsAllDayEvent" />
<typ:FieldURI FieldURI="calendar:LegacyFreeBusyStatus" />
<typ:FieldURI FieldURI="calendar:Recurrence" />
<typ:FieldURI FieldURI="item:Body"/>
</typ:AdditionalProperties>
</mes:ItemShape>
<mes:ItemIds>
<typ:ItemId Id="AQMkAD[snip]2HQAAAA=="/>
</mes:ItemIds>
</mes:GetItem>
</soapenv:Body>
</soapenv:Envelope>
完整回复:
<Envelope>
<Header>
<ServerVersionInfo MajorVersion="14" MinorVersion="0" MajorBuildNumber="722" MinorBuildNumber="0" Version="Exchange2010"/>
</Header>
<Body>
<GetItemResponse>
<ResponseMessages>
<GetItemResponseMessage ResponseClass="Success">
<ResponseCode>NoError</ResponseCode>
<Items>
<CalendarItem>
<ItemId Id="AQMkAD[snip]2HQAAAA==" ChangeKey="DwAAA[snip]ns8Yn"/>
<Subject>Elke werkdag, geen einddatum</Subject>
<Body BodyType="Text"/>
<ReminderIsSet>false</ReminderIsSet>
<ReminderMinutesBeforeStart>15</ReminderMinutesBeforeStart>
<IsAllDayEvent>false</IsAllDayEvent>
<LegacyFreeBusyStatus>Busy</LegacyFreeBusyStatus>
<Location/>
<Recurrence>
<WeeklyRecurrence>
<Interval>1</Interval>
<DaysOfWeek>Monday Tuesday Wednesday Thursday Friday</DaysOfWeek>
</WeeklyRecurrence>
<NoEndRecurrence>
<StartDate>2012-12-03+01:00</StartDate>
</NoEndRecurrence>
</Recurrence>
</CalendarItem>
</Items>
</GetItemResponseMessage>
</ResponseMessages>
</GetItemResponse>
</Body>
</Envelope>
答案 0 :(得分:2)
经过一个小时的挖掘后,我在微软论坛上发现了"Daily and Weekly recurrence pattern trouble",说明这是不可能的:
“在EWS中为”每个工作日“定义重复模式的唯一方法是使用WeeklyRecurrencePatternType.PailyPatternType只能用于定义每次出现在前一个出现后N天的重现。
换句话说,没有办法在EWS中区分这两者。“