Настройка ReportServerCredentials - PullRequest
       7

Настройка ReportServerCredentials

1 голос
/ 15 февраля 2012

У меня есть слой asp.net между интернет-пользователями и ssrs - поэтому нет проверки подлинности Windows.После того, как пользователи зашли на сайт (это существующий сайт с логином, безопасностью и т. Д.) На моей странице, я представляю им список отчетов и пытаюсь отобразить их в элементе управления ReportViewer, когда они выбирают один.

rv1 is the reportviewer control.
rv1.ProcessingMode = ProcessingMode.Remote;
rv1.Visible = true;
rv1.ServerReport.ReportServerUrl = new  Uri(ConfigurationManager.AppSettings["ReportServerUrl"]);
rv1.ServerReport.ReportPath = rptPath;

IReportServerCredentials irsc = new MyReportServerCredentials(name, password, domain);
rv1.ServerReport.ReportServerCredentials = irsc;

MyReportServerCredentials основано на классе IReportServerCredentials, как указано в другом месте и MSDN.

При выполнении строки

rv1.ServerReport.ReportServerCredentials = irsc;

дает мне EntryPointNotFoundException.

Среда
SSRS 2008, SQLS 2008 R2, asp.net 3.5., Vs2010

edit: ReportServerUrl указывает на службу отчетов, http://localhost:80/ReportServer_SQLS2K8R2

1 Ответ

2 голосов
/ 17 февраля 2012

У меня была эта ошибка, и я обнаружил, что это связано с несовпадением версий Microsoft.ReportViewer.WebForms и Microsoft.ReportViewer.Common сборок.

В моем случае мой web.config имел:

<system.web>
   ...
   <compilation debug="true" targetFramework="4.0">
     <assemblies>
       ...
       <add assembly="Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
       <add assembly="Microsoft.ReportViewer.Common, Version=10.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
     </assemblies>
     ...
   </compilation>
   ...
</system.web>

и страница .aspx (содержащая элемент управления ReportView) имели:

<%@ Register Assembly="Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
Namespace="Microsoft.Reporting.WebForms" TagPrefix="rsweb" %>

Но мой проект ссылался на сборки Версии 9.0.0.0, я просто удалил ссылку Microsoft.ReportViewer.WebForms и Microsoft.ReportViewer.Common Версия 9.0.0.0 в моем проекте asp.net и добавил ссылки на Версию 10.0.0.0. Теперь ReportViewer работает нормально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...