Export (0) Print
Expand All

FtpWebResponse.StatusCode Property

Gets the most recent status code sent from the FTP server.

Namespace:  System.Net
Assembly:  System (in System.dll)

public FtpStatusCode StatusCode { get; }

Property Value

Type: System.Net.FtpStatusCode
An FtpStatusCode value that indicates the most recent status code returned with this response.

The value returned by the StatusCode property is included in the StatusDescription property. When you are downloading data, the value of StatusCode changes as status codes are returned by the FTP server. After you call the GetResponse method, StatusCode contains an intermediate status code. When you call the Close method, StatusCode contains the final status.

The following code example uploads a file to a server and displays the status.

public static bool UploadFileToServer(string fileName, Uri serverUri)
{
    // The URI described by serverUri should use the ftp:// scheme. 
    // It contains the name of the file on the server. 
    // Example: ftp://contoso.com/someFile.txt. 
    //  
    // The fileName parameter identifies the file containing the data to be uploaded. 

    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.UploadFile;
    // Don't set a time limit for the operation to complete.
    request.Timeout = System.Threading.Timeout.Infinite;            

    // 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(fileName);
    Stream requestStream = request.GetRequestStream();
    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();

    FtpWebResponse response = (FtpWebResponse) request.GetResponse();
    Console.WriteLine("Upload status: {0}, {1}", response.StatusCode, response.StatusDescription);

    response.Close();
    return true;
}

.NET Framework

Supported in: 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Show:
© 2014 Microsoft