ComponentPro UltimateBounceInspector

      UploadMessageAsync(String, MimeMessage, ImapMessageFlags, Object) Method

      See AlsoMembers Options: Show AllLanguage Filter: AllSend comments on this topic to ComponentPro
      Asynchronously uploads the message read from a local file and sets its flags.

      Syntax

      public Task<string> UploadMessageAsync(
         string folder, 
         MimeMessage message, 
         ImapMessageFlags flags, 
         object userState = null
      )

      Parameters

      folder
      The full name of the folder to upload the message to.
      message
      The mail message object.
      flags
      The message flags.
      userState
      A user-provided object that identifies this particular asynchronous operation.

      Return Value

      An object that references the asynchronous operation.

      Examples

      Connect to an IMAP server and asynchrnously download a message (Task-based asynchronous approach).

      using System;
      using ComponentPro;
      using ComponentPro.Net.Mail;
      
      ...
      
      // Create a new instance of the Imap class.
      Imap client = new Imap();
      
      // Connect to the server.
      client.Connect("myserver");
      
      // Or you can specify the IMAP port with 
      // client.Connect("myserver", 143); 
       
      // Login to the server.
      client.Authenticate("user", "password");
      
      // ... 
       
      // Upload a local EML mail message to the 'INBOX' mailbox on the IMAP server. 
      string id = await client.UploadMessageAsync("INBOX", "c:\\temp\\my message.eml", ImapMessageFlags.Recent);
      
      // ...
      
      Console.WriteLine("Message uploaded successfully. Id: " + id);
      
      // Disconnect.
      client.Disconnect();

      Connect to an IMAP server and asynchrnously download a message (Event-based asynchronous approach).

      using System;
      using ComponentPro;
      using ComponentPro.Net.Mail;
      
      ...
      
      public void DoUploadMessageAsync()
      {
          // Create a new instance of the Imap class. 
          Imap client = new Imap();
      
          // Connect to the server. 
          client.Connect("myserver");
      
          // Or you can specify the IMAP port with 
          // client.Connect("myserver", 143); 
       
          // Login to the server. 
          client.Authenticate("user", "password");
      
          // ... 
       
          // Register an event handler. 
          client.UploadMessageCompleted += client_UploadMessageCompleted;
      
          // Upload a local EML mail message to the 'INBOX' mailbox on the IMAP server. 
          client.UploadMessageAsync("INBOX", "c:\\temp\\my message.eml", ImapMessageFlags.Recent);
      
          // ... 
       
          // Disconnect. 
          client.Disconnect();
      }
      
      void client_UploadMessageCompleted(object sender, ExtendedAsyncCompletedEventArgs<string> e)
      {
          // Imap client = (Imap)sender; 
          if (e.Error != null)
              Console.WriteLine("Error: " + e.Error.ToString());
          else 
              Console.WriteLine("Message uploaded successfully. Id: " + e.Result);
      }

      Framework

      .NET Compact Framework.NET Compact Framework

      Supported version: 2.0, 3.5, and 3.9
      Assembly: ComponentPro.Mail.CF (in ComponentPro.Mail.CF.dll)

      .NET Framework.NET Framework

      Supported version: 2.0, 3.0, 3.5, 4.0, 4.5.x, 4.6.x and later
      Assembly: ComponentPro.Mail (in ComponentPro.Mail.dll)

      Xamarin AndroidXamarin Android

      Supported version: 2.3 and later
      Assembly: ComponentPro.Mail.Android (in ComponentPro.Mail.Android.dll)

      Xamarin MacXamarin Mac

      Supported version: 2.0.x and later
      Assembly: ComponentPro.Mail.Mac (in ComponentPro.Mail.Mac.dll)

      Xamarin iOSXamarin iOS

      Supported version: 5.1.x and later
      Assembly: ComponentPro.Mail.iOS (in ComponentPro.Mail.iOS.dll)

      See Also