Acompanhar o Progresso da Conversão de Documentos

Contents
[ ]

Aspose.Email fornece a funcionalidade de acompanhar o progresso da conversão de documentos. Para isso, a API fornece SaveOptions.CustomProgressHandler. que representa o método que trata os eventos de progresso. Os tipos de eventos de progresso são representados pela enumeração ProgressEventType. A enumeração ProgressEventType possui os seguintes membros.

  • MimeStructureCreated: Este evento informa que a estrutura MIME foi criada.
  • MimePartSaved: Este evento informa que o salvamento de uma parte MIME foi concluído.
  • SavedToStream: Este evento informa que todas as partes MIME foram salvas no stream.

O seguinte código de exemplo demonstra o uso de SaveOptions.CustomProgressHandler e da enumeração ProgressEventType para acompanhar o progresso da conversão de documentos.

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-.NET
// The path to the File directory.
string dataDir = RunExamples.GetDataDir_Email();
var fileName = dataDir + "test.eml";
MailMessage msg = MailMessage.Load(fileName);
MemoryStream ms = new MemoryStream();
EmlSaveOptions opt = new EmlSaveOptions(MailMessageSaveType.EmlFormat);
opt.CustomProgressHandler = new ConversionProgressEventHandler(ShowEmlConversionProgress);
msg.Save(ms, opt);

O seguinte é o código para a classe personalizada usada no código de exemplo fornecido acima.

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-.NET
private static void ShowEmlConversionProgress(ProgressEventHandlerInfo info)
{
int total;
int saved;
switch (info.EventType)
{
case ProgressEventType.MimeStructureCreated:
total = info.TotalMimePartCount;
saved = info.SavedMimePartCount;
Console.WriteLine("MimeStructureCreated - TotalMimePartCount: " + total);
Console.WriteLine("MimeStructureCreated - SavedMimePartCount: " + saved);
break;
case ProgressEventType.MimePartSaved:
total = info.TotalMimePartCount;
saved = info.SavedMimePartCount;
Console.WriteLine("MimePartSaved - TotalMimePartCount: " + total);
Console.WriteLine("MimePartSaved - SavedMimePartCount: " + saved);
break;
case ProgressEventType.SavedToStream:
total = info.TotalMimePartCount;
saved = info.SavedMimePartCount;
Console.WriteLine("SavedToStream - TotalMimePartCount: " + total);
Console.WriteLine("SavedToStream - SavedMimePartCount: " + saved);
break;
}
}