Geral

Criando um Appointment no Outlook via ASP.NET

Ola Pessoal,

Mais uma dica…. Quer adicionar recursos a seu aplicativo ASP.NET como, por exemplo, criar um agendamento no calendário do usuário sobre um determinado evento do seu site?

Podemos fazer isso criando um Appointment do Outlook. Para isso podemos usar o código explicado abaixo:

namespace Appointment
{
    public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            //Criando StringBuilder para criação do arquivo vcs
            System.Text.StringBuilder outlookvcs = new System.Text.StringBuilder();

            //Variaveis com os dados do evento
            string Titulo = “AB Company”;
            string Descricao = “Criando um Appointment no Outlook.”;
            string Local = “Av. Paulista 11111 - São Paulo - SP”;
            DateTime DataInicio = new DateTime(2007, 12, 25, 12, 0, 0); ;
            DateTime DataTermino = new DateTime(2007, 12, 25, 19, 30, 0);

            //Criação do evento. Iniciando uma entrada no calendário
            outlookvcs.Append(“BEGIN:VCALENDAR” + “n”);
            //Definindo a versão do Appointment
            outlookvcs.Append(“PRODID:-//Microsoft Corporation//Outlook 10.0 MIMEDIR//EN” + “n”);
            outlookvcs.Append(“VERSION:1.0″ + “n”);
            //Iniciando um evento no calendário
            outlookvcs.Append(“BEGIN:VEVENT” + “n”);
            //Definindo valores(Local,Data(formato yyyyMMdd),Hora(formato HHmmss),Descricao,titulo
            outlookvcs.Append(“LOCATION:” + Local + “n”);
            //Informando a data e hora de inicio
            outlookvcs.Append(“DTSTART:” + DataInicio.ToString(“yyyyMMdd”) + “T”
                + DataInicio.ToString(“HHmmss”) + “Z” + “n”);
            //Informando a data e hora de termino
            outlookvcs.Append(“DTEND:” + DataTermino.ToString(“yyyyMMdd”) + “T”
                + DataTermino.ToString(“HHmmss”) + “Z” + “n”);
            outlookvcs.Append(“UID:1″ + “n”);
            outlookvcs.Append(“DESCRIPTION;ENCODING=QUOTED-PRINTABLE:” + Descricao + “=0A” + “n”);
            outlookvcs.Append(“SUMMARY;ENCODING=QUOTED-PRINTABLE:” + Titulo + “n”);
            outlookvcs.Append(“PRIORITY:3″ + “n”);
            //Encerrando o evento e o calendário
            outlookvcs.Append(“END:VEVENT” + “n”);
            outlookvcs.Append(“END:VCALENDAR” + “n”);
            //Definindo e escrevendo o HttpResponse do tipo “text/calendar”
            Response.Clear();
            Response.ContentType = “text/calendar”;
            Response.AddHeader(“content-disposition”, “attachment; filename=appointment.vcs”);
            Response.Write(outlookvcs);
            Response.End();
        }
    }
}


Bom pessoal mais uma dica… para deixar nossas aplicações mais ricas e sofisticadas!

[]’s


Bookmark and Share

Deixe uma resposta