0
我正在使用Icalendar在C#中開發的門戶網站上創建重複邀請。身體包含涉及房間的信息。如果用戶在5周內創建了3個房間的重複,則創建了一個重複請求邀請。但是,如果用戶在該次重複中的某個特定日期更新了房間信息,那麼我會在當天發送一個邀請,但要從單次重複邀請中刪除那一天,我必須重新創建該特定日期的5周內的單個邀請EXDATE(exlusion)。有沒有一種方法可以實現這一點,以避免5周重複的單一邀請的娛樂,並且特定的一天不包括在該邀請中。icalendar從重複中刪除實例
我正在使用的代碼示例爲重複創建單個邀請。
str.AppendLine("BEGIN:VCALENDAR");
str.AppendLine("PRODID:-//Team Test");
str.AppendLine("VERSION:2.0");
str.AppendLine("METHOD:REQUEST");
str.AppendLine("BEGIN:VEVENT");
str.AppendLine(string.Format("DTSTART:{0:yyyyMMddTHHmmssZ}", utcStime)); //utcStime is UTC time
str.AppendLine(string.Format("DTSTAMP:{0:yyyyMMddTHHmmssZ}", DateTime.UtcNow));
str.AppendLine(string.Format("DTEND:{0:yyyyMMddTHHmmssZ}", utcEtime));////utcEtime is UTC time
str.AppendLine(string.Format("RRULE:FREQ=WEEKLY;COUNT=5"));
str.AppendLine("LOCATION: ");
str.AppendLine(string.Format("UID:{0}", "Test12345"));
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));
for (int i = 0; i < msg.To.Count; i++)
{
str.AppendLine(string.Format("ATTENDEE;ROLE=REQ-PARTICIPANT;CN=\"{0}\";RSVP=TRUE:mailto:{1}", msg.To[i].DisplayName, msg.To[i].Address));
}
str.AppendLine(string.Format("ATTENDEE;PARTSTAT=ACCEPTED;CN=\"{0}\":mailto:{1}",
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); // sc is smtpclient i.e. SmtpClient sc = new SmtpClient();
我想,你應該提供更多的信息。您的一些代碼實現。並介紹ICalender。 –
@DynamicVariable,我用我使用的示例代碼更新我的問題來爲重現創建單個邀請。 – Chandikumar
排除日期是在ICalendar規範中執行此操作的正確方法。 –