我有一个页面,用户创建一个事件,并通过电子邮件将该日历事件发送给某个人,我这样做的方式是当用户创建偶数时,电子邮件也会发送给他,然后在该电子邮件中他们点击一个按钮添加到日历 . 我想知道是否有一种方法可以在用户的日历中自动创建事件,从而创建事件,这样他们就不必进入他们的电子邮件,并在所有用户都是创建该事件的用户之后将该事件添加到他们的日历中 . 以下是创建包含日历邀请的电子邮件的代码 .

string sFrom = txtEmailfrom.Text;
    string subject = txtSubjectE.Text;
    string sTo = txtEmail.Text;
    string sbody =
        @"<html><body><div><h1 style='text-align:center'>" + txtHeader.Text + "</h1></br><p text-align:center>" +txtMessage.InnerText + "</p></div></body></html>";
    string schLocation = txtLocation.Text;
    string schSubject = txtSubject.Text;
    string schDescription = txtDescription.InnerText;
    string startdate = datepicker.Value + " " + ddlStartTime.SelectedItem.Text + ":" + txtstartminute.Text + ":00 " + ddlAmPMstart.SelectedItem.Text;
    string endDate = datepicker2.Value + " " + ddlEndTime.SelectedItem.Text + ":" + txtendminute.Text + ":00 " + ddlAmPmend.SelectedItem.Text;
    System.DateTime schBeginDate = Convert.ToDateTime(startdate);
    System.DateTime schEndDate = Convert.ToDateTime(endDate);

    //PUTTING THE MEETING DETAILS INTO AN ARRAY OF STRING

    string[] contents = { "BEGIN:VCALENDAR",
                          "PRODID:-//Flo Inc.//FloSoft//EN",
                          "BEGIN:VEVENT",
                          "DTSTART:" + schBeginDate.ToUniversalTime().ToString("yyyyMMdd\\THHmmss\\Z"),
                          "DTEND:" + schEndDate.ToUniversalTime().ToString("yyyyMMdd\\THHmmss\\Z"),
                          "ORGANIZER:" + sFrom,
                          "LOCATION:" + schLocation,
                     "DESCRIPTION;ENCODING=QUOTED-PRINTABLE:" + schDescription,
                          "SUMMARY:" + schSubject, "PRIORITY:3",
                     "END:VEVENT",
                     "END:VCALENDAR" };
    string fullstring = String.Join(Environment.NewLine, contents);    // Joins all elements in the array together into a single string.
    byte[] arrayofbytes = Encoding.Default.GetBytes(fullstring);
    Saves = arrayofbytes;

    if (valEmailFrom.IsValid && valEmailTo.IsValid && valSubj.IsValid && valheader.IsValid)
    {
        SendEmailMail(sTo, txtEmailfrom.Text, "", "", subject,
      sbody, "", "", arrayofbytes, txtCelenderName.Text);
        pnlEmail.Visible = false;
        pnlDone.Visible = true;

    } 
}

然后电子邮件进程使用 RestSharp 电子邮件方法发送电子邮件,附件是 byte[] 文件 . 这就是它发送时的样子
enter image description here

也没有像Going那样的按钮也许没有任何人可以帮助我吗?请告诉我我做错了什么谢谢