所以我用给定的ICalUid创建Exchange(2007)约会:
var app = new Appointment(svc);
app.ICalUid = id;
app.Subject = "Test Appointment";
app.Recurrence = new Recurrence.DailyPattern(DateTime.Now, 3);
app.RequiredAttendees.Add("mstum@example.com");
app.AllowNewTimeProposal = false;
app.Body = new MessageBody(BodyType.HTML, "This is a <b>Test!</b>");
app.Save();
稍后,我想更新该约会,此时我需要通过ICalUid找到它。
然而,似乎没有办法做到这一点?我只能使用Appointment.Bind
来兑换我在更新时没有的Exchange ID(存储它非常不切实际)
我可以使用相同的ICalUid创建一个新的约会,它看起来像一个更新,但再次要求接受/拒绝,而不是只显示“不需要更新”。
有没有正确的方法呢?
答案 0 :(得分:8)
您可以使用ExchangeService.FindItems
搜索Appointment
ICalUid
- 请参阅下面的示例。但请注意,找到重复出现的约会时会遇到问题。
请参阅:
很遗憾您没有使用Exchange 2010,因为EWS托管API 1.1.5中有getICalUID()
。
以下是一些其他链接,可以让您获得更满意的解决方案。
答案 1 :(得分:3)
检查FindAppointments
ExchangeService
方法
http://msdn.microsoft.com/en-us/library/dd635918(v=exchg.80)
http://msdn.microsoft.com/en-us/library/dd633767(v=exchg.80)
答案 2 :(得分:1)
2007年似乎没有办法。