FtpWebRequest Класс

Определение

Реализует FTP-клиент.Implements a File Transfer Protocol (FTP) client.

public ref class FtpWebRequest sealed : System::Net::WebRequest
public sealed class FtpWebRequest : System.Net.WebRequest
type FtpWebRequest = class
    inherit WebRequest
Public NotInheritable Class FtpWebRequest
Inherits WebRequest
Наследование
FtpWebRequest
Наследование

Примеры

В следующем примере кода показано удаление файла с FTP-сервера.The following code example demonstrates deleting a file from an FTP server.

static bool DeleteFileOnServer( Uri^ serverUri )
{
   // The serverUri parameter should use the ftp:// scheme.
   // It contains the name of the server file that is to be deleted.
   // Example: ftp://contoso.com/someFile.txt.
   // 
   if ( serverUri->Scheme != Uri::UriSchemeFtp )
   {
      return false;
   }

   // Get the object used to communicate with the server.
   FtpWebRequest^ request = dynamic_cast<FtpWebRequest^>(WebRequest::Create( serverUri ));
   request->Method = WebRequestMethods::Ftp::DeleteFile;
   FtpWebResponse^ response = dynamic_cast<FtpWebResponse^>(request->GetResponse());
   Console::WriteLine( "Delete status: {0}", response->StatusDescription );
   response->Close();
   return true;
}
public static bool DeleteFileOnServer(Uri serverUri)
{
    // The serverUri parameter should use the ftp:// scheme.
    // It contains the name of the server file that is to be deleted.
    // Example: ftp://contoso.com/someFile.txt.
    // 
    
    if (serverUri.Scheme != Uri.UriSchemeFtp)
    {
        return false;
    }
    // Get the object used to communicate with the server.
    FtpWebRequest request = (FtpWebRequest)WebRequest.Create(serverUri);
    request.Method = WebRequestMethods.Ftp.DeleteFile;
 
    FtpWebResponse response = (FtpWebResponse) request.GetResponse();
    Console.WriteLine("Delete status: {0}",response.StatusDescription);  
    response.Close();
    return true;
}

В следующем примере кода демонстрируется загрузка файла с FTP-сервера с помощью класса WebClient.The following code example demonstrates downloading a file from an FTP server by using the WebClient class.

static bool DisplayFileFromServer( Uri^ serverUri )
{
   // The serverUri parameter should start with the ftp:// scheme.
   if ( serverUri->Scheme != Uri::UriSchemeFtp )
   {
      return false;
   }

   // Get the object used to communicate with the server.
   WebClient^ request = gcnew WebClient;

   // This example assumes the FTP site uses anonymous logon.
   request->Credentials = gcnew NetworkCredential( "anonymous","janeDoe@contoso.com" );
   try
   {
      array<Byte>^newFileData = request->DownloadData( serverUri->ToString() );
      String^ fileString = System::Text::Encoding::UTF8->GetString( newFileData );
      Console::WriteLine( fileString );
   }
   catch ( WebException^ e ) 
   {
      Console::WriteLine( e );
   }

   return true;
}
public static bool DisplayFileFromServer(Uri serverUri)
{
    // The serverUri parameter should start with the ftp:// scheme.
    if (serverUri.Scheme != Uri.UriSchemeFtp)
    {
        return false;
    }
    // Get the object used to communicate with the server.
    WebClient request = new WebClient();
    
    // This example assumes the FTP site uses anonymous logon.
    request.Credentials = new NetworkCredential ("anonymous","janeDoe@contoso.com");
    try 
    {
        byte [] newFileData = request.DownloadData (serverUri.ToString());
        string fileString = System.Text.Encoding.UTF8.GetString(newFileData);
        Console.WriteLine(fileString);
    }
    catch (WebException e)
    {
        Console.WriteLine(e.ToString());
    }
    return true;
}

В следующем примере кода показано использование асинхронных операций для передачи файла на FTP-сервер.The following code example demonstrates using asynchronous operations to upload a file to an FTP server.

#using <System.dll>

using namespace System;
using namespace System::Net;
using namespace System::Threading;
using namespace System::IO;

public ref class FtpState
{
private:
   ManualResetEvent^ wait;
   FtpWebRequest^ request;
   String^ fileName;
   Exception^ operationException;
   String^ status;

public:
   FtpState()
   {
      wait = gcnew ManualResetEvent( false );
   }

   property ManualResetEvent^ OperationComplete 
   {
      ManualResetEvent^ get()
      {
         return wait;
      }

   }

   property FtpWebRequest^ Request 
   {
      FtpWebRequest^ get()
      {
         return request;
      }

      void set( FtpWebRequest^ value )
      {
         request = value;
      }

   }

   property String^ FileName 
   {
      String^ get()
      {
         return fileName;
      }

      void set( String^ value )
      {
         fileName = value;
      }

   }

   property Exception^ OperationException 
   {
      Exception^ get()
      {
         return operationException;
      }

      void set( Exception^ value )
      {
         operationException = value;
      }

   }

   property String^ StatusDescription 
   {
      String^ get()
      {
         return status;
      }

      void set( String^ value )
      {
         status = value;
      }

   }
};

public ref class AsynchronousFtpUpLoader
{
public:

   // Command line arguments are two strings:
   // 1. The url that is the name of the file being uploaded to the server.
   // 2. The name of the file on the local machine.
   //
   static void Main()
   {
      array<String^>^args = Environment::GetCommandLineArgs();

      // Create a Uri instance with the specified URI string.
      // If the URI is not correctly formed, the Uri constructor
      // will throw an exception.
      ManualResetEvent^ waitObject;
      Uri^ target = gcnew Uri( args[ 1 ] );
      String^ fileName = args[ 2 ];
      FtpState^ state = gcnew FtpState;
      FtpWebRequest ^ request = dynamic_cast<FtpWebRequest^>(WebRequest::Create( target ));
      request->Method = WebRequestMethods::Ftp::UploadFile;

      // This example uses anonymous logon.
      // The request is anonymous by default; the credential does not have to be specified. 
      // The example specifies the credential only to
      // control how actions are logged on the server.
      request->Credentials = gcnew NetworkCredential( "anonymous","janeDoe@contoso.com" );

      // Store the request in the object that we pass into the
      // asynchronous operations.
      state->Request = request;
      state->FileName = fileName;

      // Get the event to wait on.
      waitObject = state->OperationComplete;

      // Asynchronously get the stream for the file contents.
      request->BeginGetRequestStream( gcnew AsyncCallback( EndGetStreamCallback ), state );

      // Block the current thread until all operations are complete.
      waitObject->WaitOne();

      // The operations either completed or threw an exception.
      if ( state->OperationException != nullptr )
      {
         throw state->OperationException;
      }
      else
      {
         Console::WriteLine( "The operation completed - {0}", state->StatusDescription );
      }
   }

private:
   static void EndGetStreamCallback( IAsyncResult^ ar )
   {
      FtpState^ state = dynamic_cast<FtpState^>(ar->AsyncState);
      Stream^ requestStream = nullptr;

      // End the asynchronous call to get the request stream.
      try
      {
         requestStream = state->Request->EndGetRequestStream( ar );

         // Copy the file contents to the request stream.
         const int bufferLength = 2048;
         array<Byte>^buffer = gcnew array<Byte>(bufferLength);
         int count = 0;
         int readBytes = 0;
         FileStream^ stream = File::OpenRead( state->FileName );
         do
         {
            readBytes = stream->Read( buffer, 0, bufferLength );
            requestStream->Write( buffer, 0, bufferLength );
            count += readBytes;
         }
         while ( readBytes != 0 );
         Console::WriteLine( "Writing {0} bytes to the stream.", count );

         // IMPORTANT: Close the request stream before sending the request.
         requestStream->Close();

         // Asynchronously get the response to the upload request.
         state->Request->BeginGetResponse( gcnew AsyncCallback( EndGetResponseCallback ), state );
      }
      // Return exceptions to the main application thread.
      catch ( Exception^ e ) 
      {
         Console::WriteLine( "Could not get the request stream." );
         state->OperationException = e;
         state->OperationComplete->Set();
         return;
      }
   }

   // The EndGetResponseCallback method  
   // completes a call to BeginGetResponse.
   static void EndGetResponseCallback( IAsyncResult^ ar )
   {
      FtpState^ state = dynamic_cast<FtpState^>(ar->AsyncState);
      FtpWebResponse ^ response = nullptr;
      try
      {
         response = dynamic_cast<FtpWebResponse^>(state->Request->EndGetResponse( ar ));
         response->Close();
         state->StatusDescription = response->StatusDescription;

         // Signal the main application thread that 
         // the operation is complete.
         state->OperationComplete->Set();
      }
      // Return exceptions to the main application thread.
      catch ( Exception^ e ) 
      {
         Console::WriteLine( "Error getting response." );
         state->OperationException = e;
         state->OperationComplete->Set();
      }
   }
};

int main()
{
   AsynchronousFtpUpLoader::Main();
}
using System;
using System.Net;
using System.Threading;

using System.IO;
namespace Examples.System.Net
{
    public class FtpState
    {
        private ManualResetEvent wait;
        private FtpWebRequest request;
        private string fileName;
        private Exception operationException = null;
        string status;
        
        public FtpState()
        {
            wait = new ManualResetEvent(false);
        }
        
        public ManualResetEvent OperationComplete
        {
            get {return wait;}
        }
        
        public FtpWebRequest Request
        {
            get {return request;}
            set {request = value;}
        }
        
        public string FileName
        {
            get {return fileName;}
            set {fileName = value;}
        }
        public Exception OperationException
        {
            get {return operationException;}
            set {operationException = value;}
        }
        public string StatusDescription
        {
            get {return status;}
            set {status = value;}
        }
    }
    public class AsynchronousFtpUpLoader
    {  
        // Command line arguments are two strings:
        // 1. The url that is the name of the file being uploaded to the server.
        // 2. The name of the file on the local machine.
        //
        public static void Main(string[] args)
        {
            // Create a Uri instance with the specified URI string.
            // If the URI is not correctly formed, the Uri constructor
            // will throw an exception.
            ManualResetEvent waitObject;
            
            Uri target = new Uri (args[0]);
            string fileName = args[1];
            FtpState state = new FtpState();
            FtpWebRequest request = (FtpWebRequest)WebRequest.Create(target);
            request.Method = WebRequestMethods.Ftp.UploadFile;
            
            // This example uses anonymous logon.
            // The request is anonymous by default; the credential does not have to be specified. 
            // The example specifies the credential only to
            // control how actions are logged on the server.
            
            request.Credentials = new NetworkCredential ("anonymous","janeDoe@contoso.com");
            
            // Store the request in the object that we pass into the
            // asynchronous operations.
            state.Request = request;
            state.FileName = fileName;
            
            // Get the event to wait on.
            waitObject = state.OperationComplete;
            
            // Asynchronously get the stream for the file contents.
            request.BeginGetRequestStream(
                new AsyncCallback (EndGetStreamCallback), 
                state
            );
            
            // Block the current thread until all operations are complete.
            waitObject.WaitOne();
            
            // The operations either completed or threw an exception.
            if (state.OperationException != null)
            {
                throw state.OperationException;
            }
            else
            {
                Console.WriteLine("The operation completed - {0}", state.StatusDescription);
            }
        }
        private static void EndGetStreamCallback(IAsyncResult ar)
        {
            FtpState state = (FtpState) ar.AsyncState;
            
            Stream requestStream = null;
            // End the asynchronous call to get the request stream.
            try
            {
                requestStream = state.Request.EndGetRequestStream(ar);
                // Copy the file contents to the request stream.
                const int bufferLength = 2048;
                byte[] buffer = new byte[bufferLength];
                int count = 0;
                int readBytes = 0;
                FileStream stream = File.OpenRead(state.FileName);
                do
                {
                    readBytes = stream.Read(buffer, 0, bufferLength);
                    requestStream.Write(buffer, 0, readBytes);
                    count += readBytes;
                }
                while (readBytes != 0);
                Console.WriteLine ("Writing {0} bytes to the stream.", count);
                // IMPORTANT: Close the request stream before sending the request.
                requestStream.Close();
                // Asynchronously get the response to the upload request.
                state.Request.BeginGetResponse(
                    new AsyncCallback (EndGetResponseCallback), 
                    state
                );
            } 
            // Return exceptions to the main application thread.
            catch (Exception e)
            {
                Console.WriteLine("Could not get the request stream.");
                state.OperationException = e;
                state.OperationComplete.Set();
                return;
            }
        }
        
        // The EndGetResponseCallback method  
        // completes a call to BeginGetResponse.
        private static void EndGetResponseCallback(IAsyncResult ar)
        {
            FtpState state = (FtpState) ar.AsyncState;
            FtpWebResponse response = null;
            try 
            {
                response = (FtpWebResponse) state.Request.EndGetResponse(ar);
                response.Close();
                state.StatusDescription = response.StatusDescription;
                // Signal the main application thread that 
                // the operation is complete.
                state.OperationComplete.Set();
            }
            // Return exceptions to the main application thread.
            catch (Exception e)
            {
                Console.WriteLine ("Error getting response.");
                state.OperationException = e;
                state.OperationComplete.Set();
            }
        }
    }
}

Комментарии

Важно!

Не рекомендуется использовать класс FtpWebRequest для новой разработки.We don't recommend that you use the FtpWebRequest class for new development. Дополнительные сведения и альтернативные варианты FtpWebRequestсм. в разделе WebRequest не должен использоваться на GitHub.For more information and alternatives to FtpWebRequest, see WebRequest shouldn't be used on GitHub.

Чтобы получить экземпляр FtpWebRequest, используйте метод Create.To obtain an instance of FtpWebRequest, use the Create method. Можно также использовать класс WebClient для отправки и загрузки сведений с FTP-сервера.You can also use the WebClient class to upload and download information from an FTP server. При использовании любого из этих подходов при указании сетевого ресурса, использующего схему FTP (например, "ftp://contoso.com"), класс FtpWebRequest предоставляет возможность программно взаимодействовать с FTP-серверами.Using either of these approaches, when you specify a network resource that uses the FTP scheme (for example, "ftp://contoso.com") the FtpWebRequest class provides the ability to programmatically interact with FTP servers.

URI может быть относительным или абсолютным.The URI may be relative or absolute. Если URI имеет форму "ftp://contoso.com/%2fpath" (% 2F является экранированным символом "/"), то универсальный код ресурса (URI) является абсолютным, а текущий каталог — /path.If the URI is of the form "ftp://contoso.com/%2fpath" (%2f is an escaped '/'), then the URI is absolute, and the current directory is /path. Однако если URI имеет форму "ftp://contoso.com/path", сначала .NET Framework журналы на FTP-сервер (используя имя пользователя и пароль, заданные свойством Credentials), а для текущего каталога устанавливается значение <UserLoginDirectory>/path.If, however, the URI is of the form "ftp://contoso.com/path", first the .NET Framework logs into the FTP server (using the user name and password set by the Credentials property), then the current directory is set to <UserLoginDirectory>/path.

Необходимо иметь допустимые имя пользователя и пароль для сервера, либо сервер должен разрешить анонимный вход в систему.You must have a valid user name and password for the server or the server must allow anonymous logon. Можно указать учетные данные, используемые для подключения к серверу, задав свойство Credentials или включив их в UserInfo часть URI, передаваемой методу Create.You can specify the credentials used to connect to the server by setting the Credentials property or you can include them in the UserInfo portion of the URI passed to the Create method. Если в универсальный код ресурса (URI) включить UserInfo сведения, для свойства Credentials задается новое сетевое учетное имя с указанными именем пользователя и паролем.If you include UserInfo information in the URI, the Credentials property is set to a new network credential with the specified user name and password information.

Внимание!

Если свойство EnableSsl не true, все данные и команды, включая сведения об имени пользователя и пароле, отправляются на сервер в виде открытого текста.Unless the EnableSsl property is true, all data and commands, including your user name and password information, are sent to the server in clear text. Любой пользователь, отслеживающий сетевой трафик, может просматривать ваши учетные данные и использовать их для подключения к серверу.Anyone monitoring network traffic can view your credentials and use them to connect to the server. Если вы подключаетесь к FTP-серверу, которому требуются учетные данные и поддерживает SSL (SSL), необходимо установить EnableSsl в значение true.If you are connecting to an FTP server that requires credentials and supports Secure Sockets Layer (SSL), you should set EnableSsl to true.

Для доступа к ресурсу FTP необходимо иметь WebPermission; в противном случае выдается исключение SecurityException.You must have WebPermission to access the FTP resource; otherwise, a SecurityException exception is thrown.

Укажите команду FTP для отправки на сервер, задав свойству Method значение, определенное в структуре WebRequestMethods.Ftp.Specify the FTP command to send to the server by setting the Method property to a value defined in the WebRequestMethods.Ftp structure. Чтобы передать текстовые данные, измените значение свойства UseBinary со значения по умолчанию (true) на false.To transmit text data, change the UseBinary property from its default value (true) to false. Дополнительные сведения и ограничения см. в разделе Method.For details and restrictions, see Method.

При использовании объекта FtpWebRequest для передачи файла на сервер необходимо записать содержимое файла в поток запроса, полученный путем вызова метода GetRequestStream или его асинхронных аналогов, методов BeginGetRequestStream и EndGetRequestStream.When using an FtpWebRequest object to upload a file to a server, you must write the file content to the request stream obtained by calling the GetRequestStream method or its asynchronous counterparts, the BeginGetRequestStream and EndGetRequestStream methods. Перед отправкой запроса необходимо выполнить запись в поток и закрыть поток.You must write to the stream and close the stream before sending the request.

Запросы отправляются на сервер путем вызова метода GetResponse или его асинхронных аналогов, методов BeginGetResponse и EndGetResponse.Requests are sent to the server by calling the GetResponse method or its asynchronous counterparts, the BeginGetResponse and EndGetResponse methods. По завершении запрошенной операции возвращается объект FtpWebResponse.When the requested operation completes, an FtpWebResponse object is returned. Объект FtpWebResponse предоставляет состояние операции и все данные, загруженные с сервера.The FtpWebResponse object provides the status of the operation and any data downloaded from the server.

Можно задать значение времени ожидания для чтения или записи на сервере с помощью свойства ReadWriteTimeout.You can set a time-out value for reading or writing to the server by using the ReadWriteTimeout property. При превышении времени ожидания вызывающий метод создает WebException с WebExceptionStatus, для которого задано значение Timeout.If the time-out period is exceeded, the calling method throws a WebException with WebExceptionStatus set to Timeout.

При загрузке файла с FTP-сервера, если команда выполнена успешно, содержимое запрошенного файла будет доступно в потоке объекта ответа.When downloading a file from an FTP server, if the command was successful, the contents of the requested file are available in the response object's stream. Доступ к этому потоку можно получить, вызвав метод GetResponseStream.You can access this stream by calling the GetResponseStream method. Дополнительные сведения см. в разделе FtpWebResponse.For more information, see FtpWebResponse.

Если свойство Proxy задано напрямую или в файле конфигурации, связь с FTP-сервером выполняется через указанный прокси-сервер.If the Proxy property is set, either directly or in a configuration file, communications with the FTP server are made through the specified proxy. Если указанный прокси-сервер является прокси-сервером HTTP, поддерживаются только команды DownloadFile, ListDirectoryи ListDirectoryDetails.If the specified proxy is an HTTP proxy, only the DownloadFile, ListDirectory, and ListDirectoryDetails commands are supported.

Кэшируется только загруженное двоичное содержимое. то есть содержимое, полученное с помощью команды DownloadFile со свойством UseBinary, установленным в значение true.Only downloaded binary content is cached; that is, content received using the DownloadFile command with the UseBinary property set to true.

Несколько FtpWebRequests повторно используют существующие подключения, если это возможно.Multiple FtpWebRequests reuse existing connections, if possible.

Дополнительные сведения об FTP-протоколе см. в документе RFC 959: протокол FTP.For more information about the FTP protocol, see RFC 959: File Transfer Protocol.

Свойства

AuthenticationLevel

Возвращает или задает значения, указывающие уровень проверки подлинности и олицетворения, используемые для этого запроса.Gets or sets values indicating the level of authentication and impersonation used for this request.

(Унаследовано от WebRequest)
CachePolicy

Возвращает или задает политику кэширования для этого запроса.Gets or sets the cache policy for this request.

(Унаследовано от WebRequest)
ClientCertificates

Возвращает или задает сертификаты, используемые для установки и шифрования подключения к FTP-серверу.Gets or sets the certificates used for establishing an encrypted connection to the FTP server.

ConnectionGroupName

Возвращает или задает имя группы подключения, которая содержит точку обслуживания, используемую для отправки текущего запроса.Gets or sets the name of the connection group that contains the service point used to send the current request.

ContentLength

Возвращает или задает значение, игнорируемое классом FtpWebRequest.Gets or sets a value that is ignored by the FtpWebRequest class.

ContentOffset

Получает или задает смещение в байтах для файла, загружаемого через этот запрос.Gets or sets a byte offset into the file being downloaded by this request.

ContentType

Всегда создает исключение NotSupportedException.Always throws a NotSupportedException.

CreatorInstance

Если переопределено в производном классе, получает объект фабрики, производный от класса IWebRequestCreate, который служит для создания объекта WebRequest для создания запроса по указанному универсальному коду ресурса (URI).When overridden in a descendant class, gets the factory object derived from the IWebRequestCreate class used to create the WebRequest instantiated for making the request to the specified URI.

(Унаследовано от WebRequest)
Credentials

Возвращает или задает учетные данные, используемые для связи с FTP-сервером.Gets or sets the credentials used to communicate with the FTP server.

DefaultCachePolicy

Определяет политику кэширования по умолчанию для всех запросов FTP.Defines the default cache policy for all FTP requests.

EnableSsl

Возвращает или задает объект Boolean, который указывает, что необходимо использовать SSL-соединение.Gets or sets a Boolean that specifies that an SSL connection should be used.

Headers

Возвращает пустой объект WebHeaderCollection.Gets an empty WebHeaderCollection object.

ImpersonationLevel

Возвращает или задает уровень олицетворения для текущего запроса.Gets or sets the impersonation level for the current request.

(Унаследовано от WebRequest)
KeepAlive

Возвращает или задает значение Boolean, которое указывает, следует ли закрывать управляющее подключение к FTP-серверу после завершения запроса.Gets or sets a Boolean value that specifies whether the control connection to the FTP server is closed after the request completes.

Method

Возвращает или задает команду, которая будет отправлена на FTP-сервер.Gets or sets the command to send to the FTP server.

PreAuthenticate

Всегда создает исключение NotSupportedException.Always throws a NotSupportedException.

Proxy

Возвращает или задает прокси-сервер, используемый для связи с FTP-сервером.Gets or sets the proxy used to communicate with the FTP server.

ReadWriteTimeout

Возвращает или задает время ожидания при записи в поток или при чтении из него.Gets or sets a time-out when reading from or writing to a stream.

RenameTo

Возвращает или задает новое имя переименовываемого файла.Gets or sets the new name of a file being renamed.

RequestUri

Возвращает универсальный код ресурса (URI), запрошенный этим экземпляром.Gets the URI requested by this instance.

ServicePoint

Возвращает объект ServicePoint, используемый для подключения к FTP-серверу.Gets the ServicePoint object used to connect to the FTP server.

Timeout

Возвращает или задает количество миллисекунд для ожидания запроса.Gets or sets the number of milliseconds to wait for a request.

UseBinary

Возвращает или задает значение Boolean, которое указывает тип данных для передачи файлов.Gets or sets a Boolean value that specifies the data type for file transfers.

UseDefaultCredentials

Всегда создает исключение NotSupportedException.Always throws a NotSupportedException.

UsePassive

Возвращает или задает поведение процесса передачи данных в клиентском приложении.Gets or sets the behavior of a client application's data transfer process.

Методы

Abort()

Прерывает асинхронную операцию FTP.Terminates an asynchronous FTP operation.

BeginGetRequestStream(AsyncCallback, Object)

Начинает асинхронное открытие потока с содержимым запроса для записи.Begins asynchronously opening a request's content stream for writing.

BeginGetResponse(AsyncCallback, Object)

Начинает асинхронно отправлять запрос и получать ответ с FTP-сервера.Begins sending a request and receiving a response from an FTP server asynchronously.

CreateObjRef(Type)

Создает объект, который содержит всю необходимую информацию для создания прокси-сервера, используемого для взаимодействия с удаленным объектом.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Унаследовано от MarshalByRefObject)
EndGetRequestStream(IAsyncResult)

Завершает асинхронную операцию в очереди, начинавшуюся с BeginGetRequestStream(AsyncCallback, Object).Ends a pending asynchronous operation started with BeginGetRequestStream(AsyncCallback, Object).

EndGetResponse(IAsyncResult)

Завершает асинхронную операцию в очереди, начинавшуюся с BeginGetResponse(AsyncCallback, Object).Ends a pending asynchronous operation started with BeginGetResponse(AsyncCallback, Object).

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.Determines whether the specified object is equal to the current object.

(Унаследовано от Object)
GetHashCode()

Служит в качестве хэш-функции по умолчанию.Serves as the default hash function.

(Унаследовано от Object)
GetLifetimeService()

Извлекает объект обслуживания во время существования, который управляет политикой времени существования данного экземпляра.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Унаследовано от MarshalByRefObject)
GetObjectData(SerializationInfo, StreamingContext)

Заполняет объект SerializationInfo данными, необходимыми для сериализации целевого объекта.Populates a SerializationInfo with the data needed to serialize the target object.

(Унаследовано от WebRequest)
GetRequestStream()

Возвращает поток, используемый для выгрузки данных на FTP-сервер.Retrieves the stream used to upload data to an FTP server.

GetRequestStreamAsync()

Если переопределено во вложенном классе, возвращает Stream для записи данных в интернет-ресурс в ходе асинхронной операции.When overridden in a descendant class, returns a Stream for writing data to the Internet resource as an asynchronous operation.

(Унаследовано от WebRequest)
GetResponse()

Возвращает ответ FTP-сервера.Returns the FTP server response.

GetResponseAsync()

При переопределении во вложенном классе возвращает ответ на интернет-запрос в виде асинхронной операции.When overridden in a descendant class, returns a response to an Internet request as an asynchronous operation.

(Унаследовано от WebRequest)
GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Унаследовано от Object)
InitializeLifetimeService()

Получает объект службы времени существования для управления политикой времени существования для этого экземпляра.Obtains a lifetime service object to control the lifetime policy for this instance.

(Унаследовано от MarshalByRefObject)
MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Унаследовано от Object)
MemberwiseClone(Boolean)

Создает неполную копию текущего объекта MarshalByRefObject.Creates a shallow copy of the current MarshalByRefObject object.

(Унаследовано от MarshalByRefObject)
ToString()

Возвращает строку, представляющую текущий объект.Returns a string that represents the current object.

(Унаследовано от Object)

Явные реализации интерфейса

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Если переопределено во вложенном классе, заполняет экземпляр SerializationInfo данными, которые необходимы для сериализации WebRequest.When overridden in a descendant class, populates a SerializationInfo instance with the data needed to serialize the WebRequest.

(Унаследовано от WebRequest)

Применяется к

Дополнительно