Comment afficher des Images à l'aide de HtmlHelper Classe ASP.NET MVC

Je suis actuellement bloqué avec ce problème de l'affichage d'une image à l'aide de HtmlHelper classe.

Voici ce que j'ai.

J'ai un custom HtmlHelper classe, qui devait afficher une image:

public static string Images(this HtmlHelper helper, ......){

    var writer = new HtmlTextWriter(new StringWriter());
    byte[] bytearray = ... //some image byte array retrieved from an object.

    //begin html image tag - this is where the problem is
    writer.AddAttribute(HtmlTextWriterAttribute.Src, url.Action("GetPhoto", "Clinical", new { image = bytearray })); 
    writer.RenderBeginTag(HtmlTextWriterTag.Img); 
    writer.RenderEndTag();
    //end of image tag

    return writer.InnerWriter.ToString();
}

Donc ce que j'ai essayé de le faire ci-dessus, consiste à injecter une Url.Action dans le img attribut source.

J'ai un contrôleur "GetPhoto" qui est suppsoed à gérer que bytearray et de renvoyer une image.

public FileContentResult GetPhoto(byte[] image)
        {

            return File(image, "image/jpeg");
        }

J'ai réussi à obtenir le contrôleur, mais l'image montre que la valeur null. Est-il un moyen de contourner cela ? ou peut-être une meilleure façon de le faire? Votre aide sera très appréciée, Merci!

Si vous pouvez donner un peu plus d'informations sur la façon dont vous prévoyez sur l'utilisation de cela, je pense qu'il serait utile. Passage du contenu de l'image pour effectuer un rendu dans une action ne semble pas nécessaire pour moi.

OriginalL'auteur Ari | 2010-08-16