[英]ASP.NET MVC - Return Pure Image Data vs View
我有一个ASP.NET MVC应用程序。 在这个应用程序中,我有一个看起来像这样的控制器:
public class MyController
{
public ActionResult Index()
{
return View();
}
public ActionResult Photos(int id)
{
bool usePureImage = false;
if (String.IsNullOrEmpty(Request.QueryString["pure"]) == false)
{
Boolean.TryParse(Request.QueryString["pure"], out usePureImage);
}
if (usePureImage)
{
// How do I return raw image/file data here?
}
else
{
ViewBag.PictureUrl = "app/photos/" + id + ".png";
return View("Picture");
}
}
}
目前,我可以按自己的意愿成功打出“照片”路线。 但是,如果请求末尾包含“?pure = true”,我想返回纯数据。 这样,其他开发人员可以将照片包含在他们的页面中。 我的问题是,我该怎么做?
您可以将图像简单地作为文件返回。 像这样:
var photosDirectory = Server.MapPath("app/photos/");
var photoPath = Path.Combine(photosDirectory, id + ".png");
return File(photoPath, "image/png");
本质上, File()
方法返回原始文件作为结果。
这样的答案似乎满足您的需求。 它使用控制器上的File方法返回具有文件内容的FileContentResult。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.