![]() |
|
Модераторы: gambit |
![]()
|
|
| cosamia |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 231 Регистрация: 11.5.2005 Репутация: нет Всего: нет |
есть класс:
class A{ ... PictureClass pic;//поле -картинка ... } PictureClass pic{ int pic_id, byte[] bytes, .... } т.е.в классе А, поле pic представленно в виде экз. типа другого класса далее хочу вывести данные из класса А в GridView. вывожу обычные поля, а для картинки создаю поле ImageField, где: DataImageField указывает на pic_id DataImageUrlFormatString на "DisplayImage.aspx?id={0}" DisplayImage.aspx все что делает - это соеденятся с БД и выводит ту картинку которыя имеет указанный id. однако здесь есть 2 большие проблемы и вопроса: 1) при попытке вывести картинку указанным способом получаю ошибку: A field or property with the name 'pic.pic_id' was not found on the selected data source. почему это не понятно... у класса А есть поле pic которое в свою очередь имеет поле pic_id данные передаются заполенными, т.е. те данные что я запрашиваю существуют и заполнены в экземпляре класса. тогда в чем проблема? 2) собственно экз. класса уже содержит массив байт с картинкой, поэтому приведенный выше неработающий пример выполняет двойную работу что мне совсем не нужно. как же мне вывести байт-данные картинки которые уже находятся в классе? |
|||
|
||||
| Mymik |
|
||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1474 Регистрация: 12.5.2006 Где: Lamer-центер Репутация: 50 Всего: 78 |
Это один из видов наследовании в программировании Тут действует по другому. Смотри, ты передал коллекцию каких-то данных. И Eval Не будет искать твои данные непосредственно в полях, которые могут являться ссылками на другие классы. Ведь так можно создать циклический список и тогда все пойдет крахом ;о). Т.е. тебе нужно написать что-то типа
Тут получается, что Eval возвращает объект, который ты приводишь к виду своего класса и вызываешь поле из этого класса. Т.е. ты создаешь полную цепочку данных.
К сожалению никак нельзя :о( нужно создавать отдельную страницу, в которую передавать параметры (как ты и делаешь) и там уже переопределять Response.ContentType(); -------------------- |
||||||
|
|||||||
| Mymik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1474 Регистрация: 12.5.2006 Где: Lamer-центер Репутация: 50 Всего: 78 |
Вот это я сморозил :о). Я имел ввиду, что Eval как бы возвращает объект, а потом этот объект преобразуется в строку. Но он ищет только в этой коллекции, а в следующих уровнях он не ищит :о) -------------------- |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Любитель, Mymik, mr.DUDA. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Разработка под ASP.NET | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |