Occurs when an asynchronous SiteAsync operation completes.

      Syntax

      public event ExtendedAsyncCompletedEventHandler<TResult> SiteCompleted

      Examples

      Shows how to use Site method to send a site-specific command to an FTP server. (Task-based approach)

      using System;
      using ComponentPro;
      using ComponentPro.Net;
      
      ...
      
      async static void Main2()
      {
          // Create a new class instance. 
          Ftp client = new Ftp();
      
          // Connect to the FTP server. 
          client.Connect("myserver");
      
          // Authenticate. 
          client.Authenticate("userName", "password");
      
          // ... 
       
          client.SiteCompleted += callback2;
          // Execute SITE HELP command on the server and return a response. 
          string response = await client.SiteAsync("HELP", "user state");
      
          Console.WriteLine("Response: " + response);
      
          // ... 
       
          // Disconnect. 
          client.Disconnect();
      }
      
      private static void callback2(object sender, ExtendedAsyncCompletedEventArgs<string> e)
      {
          if (e.Error != null)
              Console.WriteLine("Error: " + e.Error.ToString());
          else 
              Console.WriteLine("Result: " + e.Result);
      
          Console.WriteLine("Method completed. User state: " + e.UserState);
      }

      Shows how to use Site method to send a site-specific command to an FTP server (Event-based approach).

      using System;
      using ComponentPro;
      using ComponentPro.Net;
      
      ...
      
      static void Main()
      {
          // Create a new class instance. 
          Ftp client = new Ftp();
      
          // Connect to the FTP server. 
          client.Connect("myserver");
      
          // Authenticate. 
          client.Authenticate("userName", "password");
      
          // ... 
       
          client.SiteCompleted += client_SiteCompleted;
      
          // Execute SITE HELP command on the server and return a response. 
          client.SiteAsync("HELP");
      
          // wait until it's completed here. 
          // ... 
       
          // Disconnect. 
          client.Disconnect();
      }
      
      static void client_SiteCompleted(object sender, ExtendedAsyncCompletedEventArgs<string> e)
      {
          // Ftp client = (Ftp) sender; 
          if (e.Error != null)
              Console.WriteLine("Error: " + e.Error.Message);
          else 
          {
              string response = e.Result;
      
              Console.WriteLine("Response: " + response);
          }
      }

      Framework

      .NET Compact Framework.NET Compact Framework

      Supported version: 2.0, 3.5, and 3.9
      Assembly: ComponentPro.Ftp.CF (in ComponentPro.Ftp.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.Ftp (in ComponentPro.Ftp.dll)

      Portable Class Library for Windows Phone 8.1 and Windows 8.1 Store AppsPortable Class Library for Windows Phone 8.1 and Windows 8.1 Store Apps

      Supported version: 4.6.x and later
      Assembly: ComponentPro.Ftp.WinPcl (in ComponentPro.Ftp.WinPcl.dll)

      Universal Windows Platform (includes Windows 10 Mobile, Windows 10 Store Apps and Windows 10 IoT)Universal Windows Platform (includes Windows 10 Mobile, Windows 10 Store Apps and Windows 10 IoT)

      Supported version: 4.6.x and later
      Assembly: ComponentPro.Ftp.Uwp (in ComponentPro.Ftp.Uwp.dll)

      Xamarin AndroidXamarin Android

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

      Xamarin MacXamarin Mac

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

      Xamarin iOSXamarin iOS

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

      See Also