ComponentPro UltimateFtp

      DeleteDirectoryAsync(String, Object) Method

      See AlsoMembers Options: Show AllLanguage Filter: AllSend comments on this topic to ComponentPro
      Asynchronously deletes the specified empty directory.

      Syntax

      public Task<FileSystemTransferStatistics> DeleteDirectoryAsync(
         string path, 
         object userState = null
      )

      Parameters

      path
      Path of the empty directory to delete.
      userState
      A user-provided object that identifies this particular asynchronous operation.

      Return Value

      An object that references the asynchronous operation.

      Examples

      FTP Examples

      Remove an empty directory asynchronously using the DeleteDirectoryAsync method (Task-based approach).

      using System;
      using ComponentPro;
      using ComponentPro.IO;
      using ComponentPro.Net;
      
      ...
      
      private static async void Main2()
      {
          // Create a new Ftp instance. 
          using (Ftp client = new Ftp())
          {
              // Connect to the FTP server. 
              client.Connect("myserver");
      
              // Authenticate. 
              client.Authenticate("userName", "password");
      
              // ... 
       
              // The event DeleteDirectoryCompleted is fired when the operation completes. 
              client.DeleteDirectoryCompleted += callback2;
              // Delete an empty directory. 
              await client.DeleteDirectoryAsync("/mydir", "user state");
      
              // ... 
          }
      }
      
      private static void callback2(object sender, ExtendedAsyncCompletedEventArgs<FileSystemTransferStatistics> e)
      {
          if (e.Error != null)
              Console.WriteLine("Error: " + e.Error.ToString());
      
          Console.WriteLine("Method completed. User state: " + e.UserState);
      }

      Remove an empty directory asynchronously using the DeleteDirectoryAsync method (Event-based approach).

      using System;
      using ComponentPro;
      using ComponentPro.IO;
      using ComponentPro.Net;
      
      ...
      
      static void Main2()
      {
          // Create a new Ftp instance. 
          using (Ftp client = new Ftp())
          {
              // Connect to the FTP server. 
              client.Connect("localhost");
      
              // Authenticate. 
              client.Authenticate("test", "test");
      
              // ... 
       
              // The event DeleteDirectoryCompleted is fired when the operation completes. 
              client.DeleteDirectoryCompleted += callback2;
      
              // Remove an empty directory. If you wish to remove an entire directory, simply add a boolean value of true as the second parameter to the DeleteDirectoryAsync method. 
              client.DeleteDirectoryAsync("/temp", "user state");
          }
      }
      
      static void callback2(object sender, ExtendedAsyncCompletedEventArgs<FileSystemTransferStatistics> e)
      {
          // Ftp client = (Ftp)sender; 
          if (e.Error != null)
          {
              Console.WriteLine("Error: " + e.Error.ToString());
          }
          Console.WriteLine("User-state: " + e.UserState);
      }

      SFTP Examples

      Remove an empty directory asynchronously using the DeleteDirectoryAsync method (Task-based approach).

      using System;
      using ComponentPro;
      using ComponentPro.IO;
      using ComponentPro.Net;
      
      ...
      
      private static async void Main2()
      {
          // Create a new Sftp instance. 
          using (Sftp client = new Sftp())
          {
              // Connect to the SFTP server. 
              client.Connect("myserver");
      
              // Authenticate. 
              client.Authenticate("userName", "password");
      
              // ... 
       
              // The event DeleteDirectoryCompleted is fired when the operation completes. 
              client.DeleteDirectoryCompleted += callback2;
              // Delete an empty directory. 
              await client.DeleteDirectoryAsync("/mydir", "user state");
      
              // ... 
          }
      }
      
      private static void callback2(object sender, ExtendedAsyncCompletedEventArgs<FileSystemTransferStatistics> e)
      {
          if (e.Error != null)
              Console.WriteLine("Error: " + e.Error.ToString());
      
          Console.WriteLine("Method completed. User state: " + e.UserState);
      }

      Remove an empty directory asynchronously using the DeleteDirectoryAsync method (Event-based approach).

      using System;
      using ComponentPro;
      using ComponentPro.IO;
      using ComponentPro.Net;
      
      ...
      
      static void Main2()
      {
          // Create a new Sftp instance. 
          using (Sftp client = new Sftp())
          {
              // Connect to the SFTP server. 
              client.Connect("localhost");
      
              // Authenticate. 
              client.Authenticate("test", "test");
      
              // ... 
       
              // The event DeleteDirectoryCompleted is fired when the operation completes. 
              client.DeleteDirectoryCompleted += callback2;
      
              // Remove an empty directory. If you wish to remove an entire directory, simply add a boolean value of true as the second parameter to the DeleteDirectoryAsync method. 
              client.DeleteDirectoryAsync("/temp", "user state");
          }
      }
      
      static void callback2(object sender, ExtendedAsyncCompletedEventArgs<FileSystemTransferStatistics> e)
      {
          // Sftp client = (Sftp)sender; 
          if (e.Error != null)
          {
              Console.WriteLine("Error: " + e.Error.ToString());
          }
          Console.WriteLine("User-state: " + e.UserState);
      }

      Framework

      .NET Compact Framework.NET Compact Framework

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

      Xamarin AndroidXamarin Android

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

      Xamarin MacXamarin Mac

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

      Xamarin iOSXamarin iOS

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

      See Also