2009-09-19 1 views
1

Я хотел бы опубликовать свое веб-приложение и просмотреть отчет с помощью Microsoft ReportViewer. Все работает локально, но когда опубликовано, я столкнулся с тревожным количеством ошибок. Наконец, похоже, я столкнулся с тем, что не могу исправить.Проблемы с развертыванием .rdlc на сервер. (т.е. ReportViewer с локальным отчетом)

До сих пор я решил первые 3 задачи по ...

  1. Установка Miscrosoft Report просмотра распространяемого 2008
    пакет на моем сервере.
  2. Изменен мой файл «rdlc» как «Контент» и удалена rdlc buildProvider в файле web.config .
  3. Настроенные Управляемый Handler в IIS для ReportViewer

Наконец, ReportViewer, по крайней мере видно и «кажется», пытается загрузить отчет. НО Теперь я получаю следующую ошибку:

[InvalidCastException: Unable to cast object of type 'Microsoft.Reporting.WebForms.ReportHierarchy' to type 'Microsoft.Reporting.WebForms.ReportHierarchy'.] Microsoft.Reporting.WebForms.ReportDataOperation..ctor() +253 Microsoft.Reporting.WebForms.HttpHandler.GetHandler() +669 Microsoft.Reporting.WebForms.HttpHandler.ProcessRequest(HttpContext context) +13
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +181 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +75

О, отлично! Конечно, вы не можете наложить объект на тот тип, который он уже есть !!!! Кто-нибудь знает, как это исправить?

Спасибо,
Джастин

ответ

1

Ну получается, когда я сделал шаг 3. «Настроен управляемых Handler в IIS для ReportViewer»

Я зарегистрировал неправильный. Система имела v8.0 и v9.0. 50-50 шансов на выбор неправильного, и я выиграл.

Пусть это будет уроком для людей, которые думают, что диалоговые окна не нуждаются в изменении размеров ... ОНИ ВСЕГДА ДОЛЖНЫ СЛЕДУЕТ, чтобы вы могли видеть контент. Номер версии не отображается в раскрывающемся списке, в котором вы смотрите на две идентичные записи в глаза !!!

В любом случае ... если вы столкнулись с этой проблемой, проверьте, что ваша версия в Visual Studio соответствует вашему управляемому обработчику на машине сервера отчетов.

+0

Большое спасибо. Это сработало для меня. У меня была версия 9 в Visual Studio, а IIS использовала версию 10. Измененный обработчик в IIS до 9, и он сработал. –

0

Если у вас нет Visual Studio обновлена ​​до SP1, необходимо обновить в соответствии с this MSDN thread.

+0

Спасибо за предложение, но это не проблема. У меня есть VS 2008 SP1, установленный на моей машине dev. И .Net Framework SP1 и средство просмотра отчетов Redist SP1 на веб-сервере. – Justin

0

У вас установлен .Net 3.5 SP1 на сервере?

+0

Да. Спасибо за проверку. – Justin