1

我有要求发送Outlook 会议请求。我做到了,它在单身约会时工作得很好。但会议应该包含多个日期。我正在使用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);
4

0 回答 0