Невозможно запустить отчеты в приложении WinForm - PullRequest
0 голосов
/ 28 января 2020

Когда я пытаюсь открыть форму с элементом управления Report Viewer , отображается следующее сообщение:

Произошла ошибка во время локальной обработки отчета.

Определение недействительно. Подробности: Определение отчета имеет недопустимое целевое пространство имен

"http://schemas.microsoft.com/sqlserver/reporting/2016/01/reportdefinition", которое не может быть обновлено.

Заголовок файла rdl c is:

<?xml version="1.0" encoding="utf-8"?>
<Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2016/01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner">

Мне кажется верным набор ссылок:

Microsoft.ReportViewer.WinForms
Runtime version: v2.0.50727
Version: 10.0.0.0

Целевая структура: . NET Framework 4.5

Возможно, потому что это обновленное приложение, оно все еще включено в качестве предварительных условий:

Средство просмотра отчетов Microsoft Visual Studio 2008

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

Итак, как решить эту проблему?

1 Ответ

1 голос
/ 01 февраля 2020

Ссылки, которые вы используете, довольно старые, когда вы используете последнюю схему отчета. Вам необходимо использовать один или оба из следующих параметров:

  • Вы можете изменить все отчеты на более низкую версию схемы
  • Обновите элемент управления ReportViewer и. NET framework до более поздней версии.

Первый вариант не просто обновляет версию схемы, поскольку есть некоторые новые теги, которые не поддерживаются в более старых версиях схемы, например ReportSections, ReportSection. Для этого вы можете взглянуть на этот пост .

Если ваши отчеты уже созданы с действительной схемой 2016 года, последний вариант лучше. Затем вы можете обновить ReportViewer элемент управления и. NET Framework:

  • Установить последнюю версию пакета Microsoft.ReportingServices.ReportViewerControl.Winforms, чтобы обновить до ReportViewer версии 15 +
  • Измените целевую инфраструктуру проекта на. NET> = 4.6

Вы должны убедиться, что все другие ссылки и пакеты, которые вы используете в проекте, совместимы с версией платформы. NET который вы собираетесь использовать.

Чтобы узнать больше о последней версии элемента управления Report Viewer, взгляните на:

...