У меня есть проект веб-приложения VS2008, который предварительно скомпилирован без является обновляемым. Когда я пытаюсь загрузить страницу, которая должна отображать отчет RDLC с помощью ReportViewer, он просто отображает пустую страницу. Он отлично работает в не прекомпилированной версии. В чем может быть проблема?Почему мое предварительно скомпилированное веб-приложение не загружает отчет RDLC?
ответ
Проблема заключается в том, что VS также пытается скомпилировать файлы RDLC, оставив только файл-маркер вместо исходного .rdlc-файла. ReportViewer не может справиться с этим и выдает ошибку. Это отображается в каротаже как:
Неверное определение отчета. Подробности: данные на корневом уровне недействительны. Строка 1, позиция 1.
Решение состоит в том, чтобы скопировать исходные файлы RDLC в развернутое приложение. Это можно автоматизировать на этапе после сборки. См. Также this thread для получения подробной информации об ошибке и this post о том, как отредактировать шаг после сборки для проекта веб-развертывания. Я добавил следующее в файл проекта веб-развертывания:
<ItemGroup>
<ReportFiles Include="$(SolutionDir)Path\To\Reports\*.rdlc" />
</ItemGroup>
<Target Name="AfterBuild">
<Copy SourceFiles="@(ReportFiles)" DestinationFolder=".\Release\Reports\" />
</Target>
Это похоже на интересную тему, но на ней могут быть некоторые статьи. Я считаю, что мы предлагаем выгрузить проект, а затем отредактировать его, добавив аналогичный выше, правильно? Путаница в том, что профили публикации имеют одну и ту же схему и почти кажутся другой целью для таких целей. – Greg
Возможно, это не точное решение. Я попробовал это в VS2013 и прекомпиляция является частью процесса публикации, не строить:
http://msdn.microsoft.com/en-us/library/hh475319(v=vs.110).aspx
Expand File Опубликовать Параметры, а затем выберите PreCompile при публикации.
после сборки событие запускается перед процессом/прекомпиляции публикации, поэтому файл .rdlc
копируется, прежде чем он будет (еще) прекомпилировать. По крайней мере, мне кажется.
Это решило проблему для меня:
То есть, я удалил вытекающее из web.config и установить Build Action к содержанию:
<buildProviders>
<add extension=".rdlc" type="Microsoft.Reporting.RdlBuildProvider, Microsoft.ReportViewer.Common, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</buildProviders>
Ваш ответ Ждут» я работаю для меня. Следующие файлы работали для копирования файлов после запуска aspnet_compiler.
<Target Name="AdditionalFilesForPackage" AfterTargets="CopyAllFilesToSingleFolderForPackage;CopyAllFilesToSingleFolderForMsDeploy">
<ItemGroup>
<ExtraFiles Include="$(MSBuildProjectDirectory)\Path_To_Dir\**\*" />
</ItemGroup>
<Copy SourceFiles="@(ExtraFiles)" DestinationFiles="@(ExtraFiles->'$(_PackageTempDir)\Path_To_Dir\%(RecursiveDir)%(Filename)%(Extension)')" SkipUnchangedFiles="true" />
</Target>
- 1. Отчет rdlc, не показывающий отчет
- 2. предварительно скомпилированное название заголовка застревает
- 3. Javascript - Предварительно скомпилированное регулярное выражение
- 4. Отчет RDLC не отображается Данные
- 5. Не удалось создать отчет rdlc
- 6. Почему Google Chrome не загружает мое видео?
- 7. Почему ImageView не загружает мое изображение?
- 8. Почему мое приложение не загружает MvcApplication?
- 9. Как узнать отчет rdlc
- 10. Отчет о программной RDLC
- 11. Rdlc условный отчет
- 12. Отчет RDLC wpf C#
- 13. Android не предварительно загружает изображение
- 14. RDLC REPORTPARAMETER INT, отчет не отображается
- 15. . Отчет RDLC не отображается на странице ASPX
- 16. Отчет rdlc не работает на сервере
- 17. Отчет RDLC winforms не отображает данные
- 18. Отчет RDLC в asp.net C#
- 19. Отчет RDLC с несколькими столбцами
- 20. Экспорт диаграммы в отчет RDLC
- 21. Модифицировать динамически отчет rdlc (C#)
- 22. Как создать отчет типа RDLC?
- 23. RDLC отчет с группой столбцов
- 24. Отчет RDLC всего по группе
- 25. Отчет RDLC с подзапросом dataset
- 26. Сплита выражения в RDLC отчет
- 27. Почему мое отражение загружает странные классы?
- 28. PhoneGap/Cordova скомпилированное приложение для Android не загружает внешние URI
- 29. Как отлаживать мое перекрестное скомпилированное ядро Linux?
- 30. rdlC#error, не знаю почему
На вопрос и ответ на мой собственный вопрос, для будущей справки я и других, которые могут столкнуться с одной и той же проблемой. – Daan