我有一个返回图像的控制器:
public sealed class ImageController : Controller
{
public ActionResult View(Guid id)
{
var image = _images.LoadImage(id);
if (image == null) return HttpNotFound();
return File(image.Data, image.Mime);
}
}
目前我正在执行此操作以添加img
标记:
<img src="~/Image/View/@Model.ImageId" />
但我不喜欢我正在输入这样的网址。
对于其他操作,有一个Html
辅助方法,就像我想要一个指向我可以做的图像的链接:
@Html.ActionLink("View Image", "View", "Image", new {Id = Model.ImageId})
有没有办法可以避免输入Img
src
的网址?
答案 0 :(得分:0)
您可以创建自己的扩展方法:
public static MvcHtmlString Image(this HtmlHelper helper,string imageUrl)
{
string tag = "<img src='{0}'/>";
tag = string.Format(tag,imageUrl);
return MvcHtmlString.Create(tag);
}
然后使用它:
@Html.Image(@Model.ImagePath);
或使用您的行动
@ { Html.RenderAction("View","Image",new {id=@Model.ImageId})}