日期:2014-05-18 浏览次数:20535 次
using System; using System.Collections.Generic; using System.Linq; using System.Web; using Microsoft.Office.Interop.Outlook; using System.Net.Mail; using System.Configuration; namespace Zi_OutlookUI { public class MeetRequest { public struct AppointMail { public string from; //发件人邮箱 public string to; //收件人邮箱;号分隔的一个串 public string fromDisplayName; //发件人姓名 public string subject; //标题 public string body; //正文 public string location; //地点 public DateTime sTime; //开始时间 public DateTime eTime; //结束时间 } public static void SendAppointMail(AppointMail mail) { MailMessage msg = new MailMessage(); MailAddressCollection attendeeList = new MailAddressCollection(); string[] sendTo = mail.to.Split(';'); foreach (string temp in sendTo) { if (temp.Trim().Length > 3) { msg.Bcc.Add(temp); attendeeList.Add(temp); } } // Set up the different mime types contained in the message System.Net.Mime.ContentType textType = new System.Net.Mime.ContentType("text/plain"); System.Net.Mime.ContentType HTMLType = new System.Net.Mime.ContentType("text/html"); System.Net.Mime.ContentType RTFType = new System.Net.Mime.ContentType("text/rtf"); System.Net.Mime.ContentType calendarType = new System.Net.Mime.ContentType("text/calendar;"); //Add parameters to the calendar header calendarType.Parameters.Add("method", "REQUEST"); calendarType.Parameters.Add("name", "meeting.ics"); string bodyText = "test"; AlternateView textView = AlternateView.CreateAlternateViewFromString(bodyText, textType); msg.AlternateViews.Add(textView); //create the Body in HTML format string bodyHTML = "hello"; AlternateView HTMLView = AlternateView.CreateAlternateViewFromString(bodyHTML, HTMLType); msg.AlternateViews.Add(HTMLView); //create the Body in VCALENDAR format string calDateFormat = "yyyyMMddTHHmmssZ"; string bodyCalendar = "BEGIN:VCALENDAR\r\nMETHOD:REQUEST\r\nPRODID:Microsoft CDO for Microsoft Exchange\r\nVERSION:2.0\r\nBEGIN:VTIMEZONE\r\nTZID:(GMT-06.00) Central Time (US & Canada)\r\nX-MICROSOFT-CDO-TZID:11\r\nBEGIN:STANDARD\r\nDTSTART:16010101T020000\r\nTZOFFSETFROM:-0500\r\nTZOFFSETTO:-0600\r\nRRULE:FREQ=YEARLY;WKST=MO;INTERVAL=1;BYMONTH=11;BYDAY=1SU\r\nEND:STANDARD\r\nBEGIN:DAYLIGHT\r\nDTSTART:16010101T020000\r\nTZOFFSETFROM:-0600\r\nTZOFFSETTO:-0500\r\nRRULE:FREQ=YEARLY;WKST=MO;INTERVAL=1;BYMONTH=3;BYDAY=2SU\r\nEND:DAYLIGHT\r\nEND:VTIMEZONE\r\nBEGIN:VEVENT\r\nDTSTAMP:{8}\r\nDTSTART:{0}\r\nSUMMARY:{6}\r\nUID:{5}\r\nATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=TRUE;CN=\"{9}\":MAILTO:{9}\r\nACTION;RSVP=TRUE;CN=\"{4}\":MAILTO:{4}\r\nORGANIZER;CN=\"{3}\":mailto:{4}\r\nLOCATION:{2}\r\nDTEND:{1}\r\nDESCRIPTION:{7}\\N\r\nSEQUENCE:1\r\nPRIORITY:5\r\nCLASS:\r\nCREATED:{8}\r\nLAST-MODIFIED:{8}\r\nSTATUS:CONFIRMED\r\nTRANSP:OPAQUE\r\n