public class BinaryResult : ActionResult
{
public string ContentType { get; set; }
public byte[] Data { get; set; }
public override void ExecuteResult(ControllerContext context)
HttpResponseBase response = context.HttpContext.Response;
response.ContentType = ContentType;
response.BinaryWrite(Data);
}
public ActionResult Photo(string id)
// On récupère la photo dans la datasource
// et on la retourne telle quelle.
DataContext context = new DataContext();
byte[] photo = context.Contacts.Where(c => c.Email == id).Single().Photo;
return new BinaryResult() { ContentType = "image/jpeg", Data = photo };
<span>Photo</span>
<img src="<%= Url.Action("Photo", "Contacts", new { id = ViewData.Model.SelectedContact.Email }) %>" />
<br />