Управление RDLC + ReportViewer - как отображать изображения из базы данных?

StackOverflow https://stackoverflow.com/questions/1835358

  •  11-09-2019
  •  | 
  •  

Вопрос

Я сохраняю GIF-изображения (при необходимости я могу переключиться на BMP) в столбце varbinary в SQL 2008.Я хочу отобразить эти изображения в формате PDF, отображаемом элементом управления ReportViewer из моего RDLC.Как я должен ссылаться на данные изображения в отчете, чтобы это сработало?

=First(Fields!sh_lot_num_barcode_image.Value, "DataSet1"))

Простая ссылка на поле, похоже, не помогает.

Это было полезно?

Решение

Так оно и получается мой вопрос уже был задан раньше и получил ответ на свой вопрос.Отдайте свой голос Тине!

Вместе с ответом Кевина это навело меня на правильный след.В итоге я добавил свойство к своему классу результатов хранимой процедуры Linq, которое вызывает HTML-обработчик изображения.Я изменил тип MIME на BMP, и это работает как по волшебству - теперь я могу удалить столбец базы данных, и мне не нужно перепрыгивать через обручи, чтобы составить URL-адрес для сервиса изображений.Это свойство, приведенное ниже, я могу напрямую назначить элементу управления изображением.

public byte[] NDCLabel {
    get {
        return 
            BarcodeUtilities.ConvertImageToByteArray(
                BarcodeUtilities.GetBarcodeImage(this.ndc) 
                       ,System.Drawing.Imaging.ImageFormat.Bmp);
        }
    }

Другие советы

Рассматривали ли вы возможность написания HTTP-обработчика для считывания изображения из базы данных и записи его в поток ответов?Затем вы можете настроить элемент управления изображением в своем отчете на использование URL-адреса в качестве источника, и он должен отображаться в выходных данных.

У меня нет никаких реальных изображений в виде больших двоичных объектов в базе данных для тестирования, но я сделал что-то вроде подобного, когда мне нужно было отобразить форматированный текст в отчете.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top