Gerar Ocorrências a Partir de um Padrão de Recorrência
Com Aspose.Email, é possível gerar ocorrências usando um padrão de recorrência. Este artigo explica como, como gerar a próxima ocorrência e obter descrições de itens amigáveis ao usuário. Ocorrências de um padrão de recorrência de calendário MAPI podem ser geradas usando Aspose.Email. O seguinte trecho de código mostra como gerar ocorrências a partir de padrões de recorrência.
Calcular a Próxima Ocorrência ou n Próximas Ocorrências
Para obter a próxima ocorrência, use o método GenerateOccurrences com o parâmetro nNextOccurrences=1. O seguinte trecho de código mostra como gerar 20 ocorrências usando nNextOccurrences = 20. A saída do código abaixo é a seguinte:
// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-.NET | |
RecurrencePattern recurrencePattern = new RecurrencePattern(); | |
recurrencePattern.StartDate = new DateTime(1997, 9, 10, 9, 0, 0); | |
RecurrenceRule rule = recurrencePattern.RRules.Add(); | |
rule.Frequency = Frequency.Monthly; | |
rule.Count = 20; | |
rule.Interval = 18; | |
rule.ByMonthDay.Add(new int[] { 10, 11, 12, 13, 14, 15 }); | |
DateCollection expectedDates = recurrencePattern.GenerateOccurrences(20); | |
Console.WriteLine("expectedDates.Count = " + expectedDates.Count); | |
foreach (DateTime date in expectedDates) | |
{ | |
Console.WriteLine("DateTime = " + date); | |
} |
Obter Texto Amigável ao Usuário para uma Recorrência
Texto amigável ao usuário para uma regra pode ser obtido usando a propriedade FriendlyText, conforme mostrado abaixo. A saída do código será: “Recorrência todo mês no 1º e 1º dia(s) do final do mês para um máximo de 2 ocorrências.”. O seguinte trecho de código mostra como obter texto amigável ao usuário para uma recorrência.
// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-.NET | |
RecurrenceRule rule = new RecurrenceRule(); | |
rule.Frequency = Frequency.Monthly; | |
rule.Count = 2; | |
rule.ByMonthDay.Add(1); | |
rule.ByMonthDay.Add(-1); | |
Console.WriteLine(rule.FriendlyText); |