Целта е нечий Exchange Calendar (2007). Искам да добавя просто „Случване на среща“ към нечий календар. Този код работи (използвам Microsoft.Exchange.WebServices.dll):
service = new ExchangeService(ExchangeVersion.Exchange2007_SP1);
service.Credentials = new NetworkCredential("supervisor", "password", "DOMAIN.COM");
service.AutodiscoverUrl("<[email protected]>", ValidateRedirectionUrlCallback);
appt = new Appointment(service);
appt.Subject = "<subject>";
appt.Body = "<Body Text>";
appt.Start = _DateFrom;
appt.End = _DateTo;
appt.Sensitivity = Sensitivity.Private;
appt.Save(WellKnownFolderName.Calendar);
Има обаче проблеми с този код:
- Целта на назначаването е служителят. Когато добавяте срещата, срещата се показва за служителя (да!), но също и за ръководителя (бу!). Трябва ли да използвам идентификационните данни на служителя? Ако е така, какво ще стане, ако нямам достъп до това - само супервайзорите, вече ли съм извън играта?
- Назначаването се показва в Outlook като „Назначаване на среща“, а не и „Поява на среща“. И така, полето за въвеждане на участници в срещата се показва (разбира се, без никой в него) и е неуместно в моя сценарий.
- appt.Body изобщо не отговаря на Environment.NewLine или "\r\n" - все още не съм пробвал HTML.