如何设置“TO"”字段动态地在Vcalendar

本文关键字:字段 动态 Vcalendar quot 何设置 设置 TO | 更新日期: 2023-09-27 18:01:57

我需要设置登录用户的电子邮件地址在" to "字段,同时导出到Vcalendar

public static void ExportToIcalender(HttpContext ctx, DateTime startDate, DateTime endDate, string organizer, string location, string summary, string description)
{
    string DateFormat = "yyyyMMddTHHmmssZ";
    ctx.Response.ClearContent();
    ctx.Response.ContentType = "text/calendar";
    ctx.Response.AddHeader("Content-disposition", "attachment; filename=appointment.ics");
    ctx.Response.Write("BEGIN:VCALENDAR");
    ctx.Response.Write("'nVERSION:2.0");
    ctx.Response.Write("'nMETHOD:PUBLISH");
    ctx.Response.Write("'nBEGIN:VEVENT");
    **ctx.Response.Write("'nORGANIZER:MAILTO:" + organizer);**
    ctx.Response.Write("'nDTSTART:" + startDate.ToUniversalTime().ToString(DateFormat));
    ctx.Response.Write("'nDTEND:" + endDate.ToUniversalTime().ToString(DateFormat));
    ctx.Response.Write("'nLOCATION:" + location);
    ctx.Response.Write("'nUID:" + DateTime.Now.ToUniversalTime().ToString(DateFormat) + "@mysite.com");
    ctx.Response.Write("'nDTSTAMP:" + DateTime.Now.ToUniversalTime().ToString(DateFormat));
    ctx.Response.Write("'nSUMMARY:" + summary);
    description = HtmlRemoval.StripTagsRegexCompiled(description).Replace("'r'n", "''n");
    ctx.Response.Write("'nDESCRIPTION:" + description);
    ctx.Response.Write("'nPRIORITY:5");
    ctx.Response.Write("'nCLASS:PUBLIC");
    ctx.Response.Write("'nEND:VEVENT");
    ctx.Response.Write("'nEND:VCALENDAR");
    ctx.Response.End();
}

这行对我没有帮助:

ctx.Response.Write("'nORGANIZER:MAILTO:" + organizer)

请提供soln

如何设置“TO"”字段动态地在Vcalendar

可以通过设置attendee属性

ctx.Response.Write("'nATTENDEE;CN=someone@email.com;RSVP=TRUE:mailto:someone@email.com");