在c#中发送包含多个日期的Outlook会议请求

时间:2014-02-21 09:17:11

标签: c# outlook vcalendar

我要求发送展望会议请求。我这样做了,单日期工作正常。但会议应包含多个日期。我使用的是 Vcalendar ,请参阅以下代码。

请给我你的建议

 SmtpClient sc = new SmtpClient();
 MailMessage msg = new MailMessage();
 StringBuilder str = new StringBuilder();
 str.AppendLine("BEGIN:VCALENDAR");                  
 str.AppendLine("VERSION:2.0");
 str.AppendLine("METHOD:REQUEST");
 str.AppendLine("BEGIN:VEVENT");
 str.AppendLine(string.Format("DTSTART:{0:yyyyMMddTHHmmssZ}", DateTime.Now));
 str.AppendLine(string.Format("DTSTAMP:{0:yyyyMMddTHHmmssZ}", DateTime.UtcNow));
 str.AppendLine(string.Format("DTEND:{0:yyyyMMddTHHmmssZ}", DateTime.Now.AddDays(1)));
 str.AppendLine("LOCATION: India"); 
 str.AppendLine(string.Format("UID:{0}", Guid.NewGuid()));
 str.AppendLine(string.Format("DESCRIPTION:{0}", msg.Body));
 str.AppendLine(string.Format("X-ALT-DESC;FMTTYPE=text/html:{0}", msg.Body));
 str.AppendLine(string.Format("SUMMARY:{0}", msg.Subject));
 str.AppendLine(string.Format("ORGANIZER:MAILTO:{0}", msg.From.Address));
 str.AppendLine(string.Format("ATTENDEE;CN=\"{0}\";RSVP=TRUE:mailto:{1}" msg.To[0].DisplayName, msg.To[0].Address));
 str.AppendLine("BEGIN:VALARM");
 str.AppendLine("TRIGGER:-PT15M");
 str.AppendLine("ACTION:DISPLAY");
 str.AppendLine("DESCRIPTION:Reminder");
 str.AppendLine("END:VALARM");
 str.AppendLine("END:VEVENT");
 str.AppendLine("END:VCALENDAR");
 System.Net.Mime.ContentType ct = new System.Net.Mime.ContentType("text/calendar");
 ct.Parameters.Add("method", "REQUEST");
 AlternateView avCal = AlternateView.CreateAlternateViewFromString(str.ToString(), ct);
 msg.AlternateViews.Add(avCal);
 sc.Send(msg);

0 个答案:

没有答案