Получение ошибки Javascript с помощью: $ create (Microsoft.Reporting.WebFormsClient.ReportViewer - PullRequest
3 голосов
/ 09 ноября 2010

У нас есть средство просмотра отчетов, и оно добавляет следующий jscript в файл aspx:

//<![CDATA[
Sys.Application.add_init(function() {

if (typeof Microsoft == 'undefined' ||
    typeof Microsoft.Reporting == 'undefined' ||
    typeof Microsoft.Reporting.WebFormsClient == 'undefined' ||
    typeof Microsoft.Reporting.WebFormsClient.ReportViewer == 'undefined')
    Sys.UI.DomElement.setVisible($get('ReportViewer1_HttpHandlerMissingErrorMessage'), true);
    $create(Microsoft.Reporting.WebFormsClient.ReportViewer, {"_internalViewerId":"ReportViewer1_ctl03","id":"ReportViewer1"}, null, null);
});

Но он продолжает показывать ошибку сценария «Microsoft не определена» при попадании на

$create(Microsoft.Reporting.WebFormsClient.ReportViewer

линия. Мы только что обновили Silverlight 3 / VS2008 до SL4 VS2010 - чего-то не хватает?

Ответы [ 3 ]

2 голосов
/ 17 мая 2012

Просто добавьте эту строку в web.config внутри тега http.Handlers system.web

  <add verb="*" path="Reserved.ReportViewerWebControl.axd" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=10.0.0.0,Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />

или используемого вами токена и версии.

2 голосов
/ 01 декабря 2010

Я получаю точно такую ​​же ошибку.Я следовал инструкциям на http://otkfounder.blogspot.com/2007/11/solving-reportviewer-rendering-issue-on.html, но это не решило проблему, и я все еще получаю сообщение об ошибке.Дайте ему шанс, хотя, это может работать на вас ...

0 голосов
/ 04 августа 2016

Добавление

  <add verb="*" path="Reserved.ReportViewerWebControl.axd" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=10.0.0.0,Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />

до <httpHandlers> в <system.web> (как предложено в одном ответе выше) кажется устаревшей настройкой, после того как я попытался сразу же получить другую ошибку:

HTTP-ошибка 500.22 - внутренняя ошибка сервера
Обнаружен параметр ASP.NET, который не применяется в режиме интегрированного управляемого конвейера.

Что я обнаружил, так это то, что новые настройки должны быть здесь:

<system.webServer>
  <handlers>
     <add name="ReportViewerWebControlHandler" preCondition="integratedMode" verb="*" path="Reserved.ReportViewerWebControl.axd" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
  </handlers>
  ...

После добавления этого в Web.config веб-сайт сразу заработал для меня. Советы по настройке самого элемента управления ReportViewer можно найти здесь .

...