我无法在 Windows 8 商店应用程序中为 HttpWebRequest 设置范围标头,如果我尝试以不同方式设置范围,如下面的示例代码中所示,我遇到以下异常,“范围”标头必须使用适当的属性或方法进行修改.参数名称:名称。
在以下条件下设置范围标题的替代方法是什么。1.通过设置 AllowReadStreamBuffering = false 立即响应回调;这样我就可以不断地将其写入文件并获得下载进度。
代码是:
WebHeaderCollection headers = new WebHeaderCollection();
headers[HttpRequestHeader.Range] = "bytes=" + CurrentBufferPointer + "-";
HttpWebRequest DownLoadClient = (HttpWebRequest)WebRequest.Create(this.FileUri);
DownLoadClient.Method = "GET";
DownLoadClient.AllowReadStreamBuffering = false;
// 设置以下两种方式中的任何一种都会引发异常
DownLoadClient.Headers = headers;
Or
DownLoadClient.Headers[HttpRequestHeader.Range] = "bytes=" + CurrentBufferPointer + "-";
DownLoadClient.BeginGetResponse(new AsyncCallback(GetResponseCallback), DownLoadClient);
当我设置 DownLoadClient.Headers = headers; 这个例外会来: