DataList + объект OLE
Релиб
Форумы       Участники    Календарь    Кто он-лайн?
Добро пожаловать, гость ( Вход | Регистрация )
        



DataList + объект OLE Expand / Collapse
Автор
Сообщение
30.09.2006 14:02
новичок

новичокновичокновичокновичокновичокновичокновичокновичок

участник
Last Login: 06.08.2007 0:25
Сообщ.: 6, Visits: 24
Можно ли поместить в DataList картинку из поля объекта OLE?
Сообщ. #905120
01.10.2006 12:03
Supreme Being

Supreme Being

модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240, Visits: 65 445
Можно, но это не так просто и, кроме того, хранить файлы в базе не очень хорошая мысль. Лучше хранить их в файловой системе, а в базе хранить только путь или имя файла.

Чтобы вывести картинку из поля нужно чтобы в таблице было ключевое поле. Это необходимо так как мы не можем вывести html и картинку вместе. Картинку придется получать из отдельного файла. То есть создаем файл image.aspx который будет получать параметр id (через query string) и по этому параметру выдавать картинку в виде потока байтов.

Примерный код image.aspx будет вылядеть так:

<%
Response.ContentType = "image/gif"; // Если выдаем gif файл
// Получение картинки из базы
int id = Int32.Parse(Request.QueryString["id"]);
byte[] image;
....
//
Response.OutputStream.Write(image, 0, image.Length);
%>

При выводе DataList на месте где должна быть картинка тебе нужно сослаться на image.aspx передав ему id картинки. Для это можно или вручную вывести код вида <img src="image.aspx?id=5"> или воспользоваться контролом <asp:Image ... />

Теперь самое сложное - получение картинки из базы. Для этого берем за основу код из статьи базы знаний Microsoft How To Retrieve Bitmap from Access and Display It in Web Page. Суть метода в поиске начала картинки по его заголовку, делая отступ в 19 байтов из-за заголока OLE поля.

Сообщ. #905126
05.10.2006 1:20
новичок

новичокновичокновичокновичокновичокновичокновичокновичок

участник
Last Login: 06.08.2007 0:25
Сообщ.: 6, Visits: 24
спасибо, за науку!
Сообщ. #905281
« пред. тема | след. тема »


Эту тему читают Expand / Collapse
Посетители: 0 (0 гостей, 0 участников, 0 скрыт.участников)
Сейчас нет участников, просматривающих тему.
Модераторы: Alexey, boombastik, bazile, pl, Alexey Spirin

Время GMT +3:00, Сейчас 5:21