Я создал объект типа Bitmap, используя MemoryStream (просто прочитал изображение из базы данных и потом этот массив байт записал в MemoryStream, а потом создал Bitmap из полученного потока)
Теперь я хочу отобразить этот Bitmap на странице. Щас я делаю на сервере в папке Images временной файл avatarka.jpeg и затем пишу
<asp:Image ID="avatarka" runat="server" ImageUrl="Images/avatarka.jpg" />
То есть, фактически создавать тут Bitmap и не нужно. Можно просто вычитать массив байт из БД и записать его в файл avatarka.jpeg.
Но, я хочу обойтись без временного файла. Как это сделать?
Здравствуйте, galileopro, Вы писали:
G> Но, я хочу обойтись без временного файла. Как это сделать?
MyImage.aspx
protected void Page_Load(object sender, EventArgs e)
{
byte[] img = ... ; //массив байт из БД - JPEG картинка
Response.ContentType = "image/jpeg";
Response.OutputStream.Write(img, 0, img.Length);
}
<asp:Image ID="avatarka" runat="server" ImageUrl="MyImage.aspx" />
Здравствуйте, andrey82, Вы писали:
A>Здравствуйте, galileopro, Вы писали:
G>> Но, я хочу обойтись без временного файла. Как это сделать?
A>MyImage.aspx
A>A> protected void Page_Load(object sender, EventArgs e)
A> {
A> byte[] img = ... ; //массив байт из БД - JPEG картинка
A> Response.ContentType = "image/jpeg";
A> Response.OutputStream.Write(img, 0, img.Length);
A> }
A>
A>A><asp:Image ID="avatarka" runat="server" ImageUrl="MyImage.aspx" />
A>
Думаю лучше читать изображение и возвращать его из хэндлера.
Нужно будет только его зарегистрировать в web.config