Я бы создал Http Handler для этого.Некоторые браузеры поддерживают запись двоичных изображений в разметке, но это нестандартно, поэтому я рекомендую против этого.
Если вы можете получить байты из своего запроса, сделайте что-то вроде этого:
Затем создайте обработчик.
public class IISHandler : IHttpHandler
{
public bool IsReusable
{
get { return true; }
}
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "image/jpeg";
myent logo = new myent();
var query = (from p in logo.tblLogoes
where p.Id == id && p.Id2 == id2
select p.Image).First();
byte[] bytes = query.bytes;
context.Response.OutputStream.Write( bytes, 0, bytes.Length);
}
}
Зарегистрируйте дескриптор:
<system.web>
<httpHandlers>
<!-- ImageHandler handlers -->
<add verb="*" path="myimages/*.jpg" type="namespace.IISHandler, namespace" />
</httpHandlers>
...
На вашей веб-странице пусть тег <img>
указывает на обработчик.
<img src="myimages/someimage.jpg">
Ваш код мало показывает, как вы нацеливаетесь на изображения, идентификаторы, имена?Скорее всего, вы хотите передать некоторый идентификатор обработчику, чтобы вы могли получить правильное изображение.
Взгляните на http://msdn.microsoft.com/en-us/library/ms972953.aspx, чтобы получить более подробный пример обработки динамического контента с помощьюобработчики http.