Trabalhando com Itens do Calendário do Outlook
Trabalhando com MapiCalendar
A classe MapiCalendar do Aspose.Email fornece métodos e atributos para definir várias propriedades de um item de calendário. Este artigo fornece amostras de código para:
- Trabalhando com MapiCalendar
- Criando e Salvando Itens de Calendário
- Salvando o Item do Calendário como MSG
- Adicionando lembrete de exibição a um Calendário
- Adicionando lembrete de áudio a um Calendário
- Adicionar/Recuperar anexos de arquivos do Calendário
- Status dos Recipientes de um Pedido de Reunião
- Criar MapiCalendarTimeZone a partir do Fuso Horário Padrão
- Definindo Lembrete com o Compromisso Criado
- Converter Compromisso EML para MSG com Corpo HTML
Criando e Salvando Itens de Calendário
O seguinte trecho de código mostra como criar e salvar um item de calendário no formato ICS.
Salvando o Item do Calendário como MSG
O seguinte trecho de código mostra como salvar o item do calendário como MSG.
Definindo um Produto ID ao Salvar MapiCalendar para ICS
A propriedade ProductIdentifier da classe MapiCalendarIcsSaveOptions é usada para salvar um item de calendário MAPI em um arquivo iCalendar (ICS) preservando as informações originais de data e hora, bem como um identificador de produto personalizado. A propriedade especifica o identificador para o produto que criou o objeto iCalendar.
O seguinte exemplo de código mostra como trabalhar com dados iCalendar (ICS) dentro de um objeto de calendário MAPI:
var icsSaveOptions = new MapiCalendarIcsSaveOptions
{
KeepOriginalDateTimeStamp = true,
ProductIdentifier = "Foo Ltd"
};
mapiCalendar.Save("my.ics", icsSaveOptions);
Obtendo o número total de eventos
A classe CalendarReader permite lidar com eventos de calendário sem esforço. As seguintes propriedades e um método permitem que você trabalhe com múltiplos eventos:
- CalendarReader.Count - A propriedade Count da classe CalendarReader permite recuperar o número de componentes Vevent (eventos) presentes no calendário, facilitando o rastreamento do número total de eventos.
- CalendarReader.IsMultiEvents - Esta propriedade determina se o calendário contém múltiplos eventos. Ela fornece um valor booleano indicando se o calendário contém mais de um evento, ajudando a identificar calendários com eventos únicos ou múltiplos.
- CalendarReader.Method - A propriedade Method obtém o tipo de método iCalendar associado ao objeto de calendário. Ela retorna o tipo de método, como “REQUEST,” “PUBLISH,” ou “CANCEL,” fornecendo informações valiosas sobre o propósito do calendário.
- CalendarReader.Version - Obtém a versão do iCalendar.
- CalendarReader.LoadAsMultiple() Este método permite carregar uma lista de eventos de um calendário contendo múltiplos eventos. Ele retorna uma lista de objetos Appointment, permitindo fácil acesso e processamento de cada evento individualmente.
O seguinte exemplo de código demonstra como você pode implementar essas capacidades em seu projeto:
var reader = new CalendarReader(fileName);
Console.WriteLine("O calendário contém " + reader.Count + " eventos");
Console.WriteLine("A versão do calendário é " + reader.Version);
Console.WriteLine("O método do calendário é " + reader.Method);
Console.WriteLine("O calendário contém múltiplos eventos? - " + reader.IsMultiEvents);
List<Appointment> appointments = reader.LoadAsMultiple();
Adicionando lembrete de exibição a um Calendário
O seguinte trecho de código mostra como adicionar um lembrete de exibição a um calendário.
Adicionando lembrete de áudio a um Calendário
O seguinte trecho de código mostra como adicionar um lembrete de áudio a um calendário.
Adicionar/Recuperar anexos de arquivos do Calendário
O seguinte trecho de código mostra como adicionar/recuperar anexos de arquivos do calendário.
Status dos Recipientes de um Pedido de Reunião
O seguinte trecho de código mostra como exibir o status dos recipientes de um pedido de reunião.
Criar MapiCalendarTimeZone a partir do Fuso Horário Padrão
O seguinte trecho de código mostra como criar MapiCalendarTimeZone a partir do fuso horário padrão.
Definindo Lembrete com o Compromisso Criado
Um lembrete pode ser adicionado quando um compromisso é criado. Esses alarmes podem ser acionados com base em diferentes critérios, como n minutos antes do agendamento começar, repetir n vezes em n intervalos. Diferentes tags podem ser usadas para criar esses gatilhos no script delimitado por BEGIN:VALARM e END:VALARM dentro de um compromisso. Existem várias variantes nas quais o lembrete pode ser definido em um compromisso.
Definindo um Lembrete Adicionando Tags
O seguinte trecho de código mostra como definir um lembrete adicionando tags.
Converter Compromisso EML para MSG com Corpo HTML
Desde a versão 19.3, o Aspose.Email fornece a capacidade de converter Compromisso EML para MSG enquanto retém o corpo HTML do compromisso. O Aspose.Email fornece uma propriedade MapiConversionOptions.ForcedRtfBodyForAppointment que tem um valor padrão de true. Quando o valor de MapiConversionOptions.ForcedRtfBodyForAppointment é definido como true, o corpo do compromisso é convertido para o formato RTF. Para manter o formato do corpo do compromisso em HTML, defina o valor de MapiConversionOptions.ForcedRtfBodyForAppointment como false.
O seguinte exemplo demonstra o uso da propriedade MapiConversionOptions.ForcedRtfBodyForAppointment para manter o formato do corpo do compromisso em HTML.