DRD94 Ответов: 1

C# сообщает об ошибке при обработке "нелегального пути"


Я пытаюсь заставить отчеты в C# работать. Я пытаюсь встроить свой файл rdlc как таковой:

    var reportDataSource = new ReportDataSource("ProspectsDataSet", _allProspects);
ReportViewer.LocalReport.DataSources.Add(reportDataSource);

ReportViewer.LocalReport.ReportEmbeddedResource = "SdcDatabase.Modules.EnquiryModule.View.Reports.ProspectsReport.rdlc";
ReportViewer.ZoomMode = ZoomMode.PageWidth;
ReportViewer.RefreshReport();


Действие при построении на сам файл rdlc имеет значение внедренный ресурс и копировать в выходной каталог значение всегда копировать.

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

Во время локальной обработки отчета произошла ошибка. Определение отчета " является недействительным.
При обработке отчета произошла непредвиденная ошибка. Инициализатор типа для ' Microsoft
.ReportingServices.ReportIntermiedateFormat.Упорство.IntermediateFormatVersion " выбросил исключение.
Путь не имеет юридической формы.

Что я уже пробовал:

Я попытался переключить несколько вещей в пути, например заменить". " на " / "И"\", но до сих пор мне не удалось ничего исправить. Я также попытался использовать LocalPath вместо EmbeddedResource, но снова наткнулся на ошибки.

Я искал эту проблему, но до сих пор не нашел ничего, что могло бы решить мою проблему.

1 Ответов

Рейтинг:
1

Graeme_Grant

Это должно помочь: Доступ к ресурсам в WPF[^]


DRD94

Спасибо за ответ, Грэм. Я использовал эту технику с изображениями, вы предлагаете мне также использовать Uri для файла rdlc?

Graeme_Grant

На самом деле для любого встроенного ресурса. :)

DRD94

Даже если ReportEmbeddedResource принимает только строку? Я должен сделать это в данный момент (он все еще не работает): ReportViewer.LocalReport.ReportEmbeddedResource = новый URI("упаковка://применение:,,,/модулей/EnquiryModule/вид/отчеты/ProspectsReport.с отчетами").Метод toString();

Graeme_Grant

Это зависит от того, поддерживаются ли встроенные ресурсы для этого элемента управления.

DRD94

Он действительно не хочет работать как встроенный ресурс. Я собираюсь попытать счастья с LocalReport. ReportPath, чтобы попробовать новый подход.

Graeme_Grant

Не гадай, посмотри.

DRD94

По-видимому, существует скудная информация по любому из этих решений. Ничего из того, что я нашел до сих пор, не сработало, отсюда и этот вопрос.