FtpWebResponse.StatusCode 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取从 FTP 服务器上发送的最新状态代码。
public:
property System::Net::FtpStatusCode StatusCode { System::Net::FtpStatusCode get(); };
public System.Net.FtpStatusCode StatusCode { get; }
member this.StatusCode : System.Net.FtpStatusCode
Public ReadOnly Property StatusCode As FtpStatusCode
属性值
FtpStatusCode 值,它指示与此响应一起返回的最新状态代码。
示例
下面的代码示例将文件上传到服务器并显示状态。
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;
}
注解
属性返回 StatusCode 的值包含在 属性中 StatusDescription 。 下载数据时,由于状态代码由 FTP 服务器返回, StatusCode 值会发生变化。 调用 GetResponse 方法后, StatusCode 包含中间状态代码。 调用 Close 方法时, StatusCode 包含最终状态。