1
私はresponse.Contentとしてzipファイルを送信します。httpResponseMessageからStreamContentとしてzipfileを読み取る方法は?
[HttpGet]
[Route("Package")]
public async Task<HttpResponseMessage> GetLogsPackage()
{
HttpResponseMessage response = new HttpResponseMessage(HttpStatusCode.OK);
using (var stream = new MemoryStream())
{
using (var zipFile = ZipFile.Read((Path.Combine(path, opId.ToString()) + ".zip")))
{
zipFile.Save(stream);
response.Content = new StreamContent(stream);
response.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");
response.Content.Headers.ContentLength = stream.Length;
}
}
return response;
}
このメソッドを呼び出した後、このストリームを取得する方法?私のコードは機能しません(zipファイルとして読み取ることができません) 私はstream.lenght、例えば345673を送りますが、367の長さの応答を受け取ります。 どうしたのですか?
var response = await _coreEndpoint.GetLogsPackage();
using (var stream = response.Content.ReadAsStreamAsync())
using (var zipFile = ZipFile.Read(stream))
{ //do something with zip-file