Guest

Make an Html.ActionLink around an Image in ASP.NET MVC

By: a guest on Jan 28th, 2012  |  syntax: None  |  size: 0.74 KB  |  hits: 47  |  expires: Never
download  |  raw  |  embed  |  report abuse
Copied
  1. <a href="<%= Url.Action("ActionName", "ControllerName") %>">
  2.     <img src="<%= Url.Content("~/Content/img/imgname.jpg") %>" /></a>
  3.        
  4. public static string ActionLinkWithImage(this HtmlHelper html, string imgSrc, string actionName)
  5. {
  6.     var urlHelper = new UrlHelper(html.ViewContext.RequestContext);
  7.  
  8.     string imgUrl = urlHelper.Content(imgSrc);
  9.     TagBuilder imgTagBuilder = new TagBuilder("img");
  10.     imgTagBuilder.MergeAttribute("src", imgUrl);
  11.     string img = imgTagBuilder.ToString(TagRenderMode.SelfClosing);
  12.  
  13.     string url = UrlHelper.Action(actionName);
  14.  
  15.     TagBuilder tagBuilder = new TagBuilder("a") {
  16.         InnerHtml = img
  17.     };
  18.     tagBuilder.MergeAttribute("href", url);
  19.  
  20.     return tagBuilder.ToString(TagRenderMode.Normal);
  21. }