从返回类型为ActionResult的方法中获取图像
本文关键字:获取 图像 方法 返回类型 ActionResult | 更新日期: 2023-09-27 18:11:00
我正在一个Web Api项目上工作,我正在从MVC项目中的控制器获得图像。返回类型为ActionResult
。Web Api中的GetImage方法的返回类型为HttpResponseMessage
:
public HttpResponseMessage GetImage()
{
var result = new HttpResponseMessage(HttpStatusCode.OK);
ActionResult image = GetProductImage();
// ? result.Content = image;
result.Content.Headers.ContentType = new MediaTypeHeaderValue("image/jpg");
return result;
}
有没有办法把图像从ActionResult到HttpResponseMessage?另一个控制器中的代码看起来像这样(简化):
public ActionResult GetProductImage()
{
byte[] bytes = GetImageFromDisk(fullImagePath);
return File(bytes, "image/jpeg");
}
public HttpResponseMessage Image(int pIndice)
{
var response = new HttpResponseMessage(HttpStatusCode.OK);
using (var binaryReader = new BinaryReader(requestFile[pIndice].InputStream))
{
response.Content = new ByteArrayContent(binaryReader.ReadBytes(requestFile[pIndice].ContentLength));
response.Content.Headers.ContentType = new MediaTypeHeaderValue(requestFile[pIndice].ContentType ?? "image/jpeg");
}
return response;
}