FtpWebRequest.ContentOffset 属性    
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置请求所下载的文件的字节偏移量。
public:
 property long ContentOffset { long get(); void set(long value); };public long ContentOffset { get; set; }member this.ContentOffset : int64 with get, setPublic Property ContentOffset As Long属性值
指定文件偏移量(以字节为单位)的 Int64 实例。 默认值为零。
例外
对于一个已在进行的请求为此属性指定了一个新值。
为该属性指定的值小于 0。
示例
下面的代码示例演示如何从服务器下载文件的一部分,并将下载的数据追加到本地文件。
public static bool RestartDownloadFromServer(string fileName, Uri serverUri, long offset)
{
    // The serverUri parameter should use the ftp:// scheme.
    // It identifies the server file that is to be downloaded
    // Example: ftp://contoso.com/someFile.txt.
    // The fileName parameter identifies the local file.
    //The serverUri parameter identifies the remote file.
    // The offset parameter specifies where in the server file to start reading data.
    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.DownloadFile;
    request.ContentOffset = offset;
    FtpWebResponse response = null;
    try
    {
        response = (FtpWebResponse) request.GetResponse();
    }
    catch (WebException e)
    {
        Console.WriteLine (e.Status);
        Console.WriteLine (e.Message);
        return false;
    }
    // Get the data stream from the response.
    Stream newFile = response.GetResponseStream();
    // Use a StreamReader to simplify reading the response data.
    StreamReader reader  = new StreamReader(newFile);
    string newFileData = reader.ReadToEnd();
    // Append the response data to the local file
    // using a StreamWriter.
    StreamWriter writer = File.AppendText(fileName);
    writer.Write(newFileData);
    // Display the status description.
    // Cleanup.
    writer.Close();
    reader.Close();
    response.Close();
    Console.WriteLine("Download restart - status: {0}",response.StatusDescription);
    return true;
}
注解
ContentOffset从 FTP 服务器下载文件时设置 属性。 此偏移量指示服务器文件中标记要下载的数据开始的位置。 偏移量指定为文件开头的字节数;第一个字节的偏移量为零。
设置 ContentOffset 会导致 FtpWebRequest 将重启 (REST) 命令发送到服务器。 如果要将数据上传到服务器,则大多数 FTP 服务器实现会忽略此命令。
调用 GetRequestStream、、 GetResponseBeginGetRequestStream或 BeginGetResponse 方法后更改ContentOffset会导致InvalidOperationException异常。