我正在使用DDay库创建一个iCal事件,以便我的站点的用户可以在他们的日历中添加一些内容。
我希望他们在Office 2010中添加约会,而不是会议请求(希望其他人也是如此)。当我使用库并将方法设置为PUBLISH时,它确实显示为约会,但它报告在日历中找不到该会议。然后,当我单击no response required时,该项目将被删除,并且不会保留在他们的日历中。
如果我将方法更改为请求,它将显示为会议请求。这是个不错的次佳选择,但“收件人”字段是空白的。如果这是我能做的最好的事情,我如何设置'to‘字段?我想我会让他们对自己做出回应。
private static string CreateCalendarEvent(
string title, string body, DateTime startDate, double duration,
string location, string organizer, string eventId, bool allDayEvent)
{
// mandatory for outlook 2007
if(String.IsNullOrEmpty(organizer))
throw new Exception("Organizer provided was null");
var iCal = new iCalendar
{
Method = "PUBLISH",
Version = "2.0"
};
// "REQUEST" will update an existing event with the same UID (Unique ID) and a newer time stamp.
//if (updatePreviousEvent)
//{
// iCal.Method = "REQUEST";
//}
var evt = iCal.Create<Event>();
evt.Summary = title;
evt.Start = new iCalDateTime(startDate);
evt.Duration = TimeSpan.FromHours(duration);
evt.Description = body;
evt.Location = location;
evt.IsAllDay = allDayEvent;
evt.UID = String.IsNullOrEmpty(eventId) ? new Guid().ToString() : eventId;
evt.Organizer = new Organizer(organizer);
evt.Alarms.Add(new Alarm
{
Duration = new TimeSpan(0, 15, 0),
Trigger = new Trigger(new TimeSpan(0, 15, 0)),
Action = AlarmAction.Display,
Description = "Reminder"
});
return new iCalendarSerializer().SerializeToString(iCal);
}发布于 2012-08-24 23:25:40
当我将管理器设置为电子邮件地址,而不是测试字符串时,它工作得很好。我已经把所有这些都写下来了,所以我想我应该把它分享出来,以防其他人遇到同样的问题
发布于 2013-01-18 17:05:19
当exchange服务器从2003升级到Outlook 2010时,我的应用程序停止工作。在升级之前发布运行良好,但现在我必须更改为请求
感谢你的文章
https://stackoverflow.com/questions/12112323
复制相似问题