ReportViewer: Как загрузить отчет как внедренный ресурс в другую сборку, используя отражение? - PullRequest
3 голосов
/ 19 октября 2010

Я не совсем уверен, как это сделать.Я создал общий класс для открытия отчетов для моего приложения.Отчеты содержатся в другой библиотеке DLL, которая не упоминается как встроенный ресурс.

Если я ссылаюсь на библиотеку DLL, я могу просто сделать:Viewer.LocalReport.ReportEmbeddedResource = "SomeLibrary.ReportName.rdlc";

Однако, поскольку я не ссылаюсь на DLL, я полагаю, что я должен получить отчет с помощью рефлексии.Вот где я застрял.Я действительно не знаю, как это сделать.

1 Ответ

3 голосов
/ 07 декабря 2010

Я нашел способ сделать это, прочитав RDLC и вернув поток.

public void PrepareReport(IAppReport report)
{
   Viewer.LocalReport.LoadReportDefinition(report.GetStream());
}

Немного подумав, я могу вытащить этот объект Stream.

...