Ne pouvait pas charger le fichier ou l'assemblage 'Microsoft.ReportViewer.WebForms'
je suis en train d'utiliser la visionneuse de rapports de asp.net et ont transféré mon site. Cependant, lorsque ma page contenant le visualiseur de rapport est chargée, elle affiche l'erreur suivante:
ne pouvait pas charger le fichier ou l'assemblage 'Microsoft.ReportViewer.WebForms, Version = 11.0.0.0, Culture=neutre, PublicKeyToken = 89845dcd8080cc91' ou l'une de ses dépendances. L'assemblée manifeste définition ne correspond pas à la référence d'assembly. (Exception de HRESULT: 0x80131040)
c'est la première fois que je déploie un ASP.NET site web, donc je ne suis pas sûr de ce qu'est le problème.
11 réponses
ce lien m'a donné un indice que je n'ai pas installé une mise à jour requise (mon problème concerne la version nr, v11.0.0.0)--5-->
ReportViewer 2012 mise à Jour de "chasse aux sorcières" pour être au courant de
j'ai installé la mise à jour SQLServer2008R2SP2
j'ai téléchargé ReportViewer.msi, qui doivent avoir installé Microsoft® System CLR Types for Microsoft® SQL Server ® 2012 (regardez à mi-chemin la page de l'installateur)
dans le GAC était maintenant disponible WebForms v11.0.0.0 (C:\Windows\assembly\Microsoft.ReportViewer.WebForms
v11.0.0.0
ainsi que Microsoft.ReportViewer.Common
v11.0.0.0
)
J'ai installé Microsoft.ReportViewer.2012.Runtime nuget package et le problème a été résolu sans installer ReportViewer.msi ou sql pack de 12
vous devez faire référence aux deux Microsoft.ReportViewer.WebForms et Microsoft.ReportViewer.Commun et fixe la propriété Copylocale à true. Il en résultera que la dll sera copiée dans notre répertoire bin (les deux sont nécessaires).
j'ai résolu le problème en copiant les deux
- Microsoft.ReportViewer.WebForms.dll
C:\Program Files (x86)\Microsoft Visual Studio 12.0\ReportViewer
- et Microsoft.reportviewer.commun.dll
C:\Program Files\Microsoft Office\Office15\ADDINS\PowerPivot Excel Add-in
dans le dossier bin (site web).
bien sûr web.config
doit avoir:
<httpHandlers>
<add path="Reserved.ReportViewerWebControl.axd" verb="*" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" validate="false" />
</httpHandlers>
<assemblies>
<add assembly="Microsoft.ReportViewer.WebForms, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91" />
<add assembly="Microsoft.ReportViewer.Common, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91" />
</assemblies>
<buildProviders>
<add extension=".rdlc" type="Microsoft.Reporting.RdlBuildProvider, Microsoft.ReportViewer.WebForms, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
</buildProviders>
<system.webServer>
<validation validateIntegratedModeConfiguration="false" />
<handlers>
<add name="ReportViewerWebControlHandler" preCondition="integratedMode" verb="*" path="Reserved.ReportViewerWebControl.axd" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
</handlers>
</system.webServer>
Et c'est tout. Pour moi, c'est ok.
J'espère que cela vous aidera.
j'ai couru dans la même erreur. Mon application web a été pointée vers report viewer version 10.0 mais si 11.0 est installé, il ajoute une redirection dans la version 10.0 .dll à 11.0. Cela est devenu un problème lorsque 11.0 a été désinstallé car cela ne corrige pas la redirection dans le 10.0 .DLL. La solution dans mon cas était simplement de désinstaller et réinstaller 10.0.
Télécharger le fichier Microsoft.ReportViewer.WebForms.dll vers votre répertoire bin de votre application web.
Vous pouvez trouver ce fichier dll dans le répertoire bin de votre application web.
j'ai eu cette erreur avec une vieille application web forms. Il s'avère qu'il y avait une ligne dans la marge causant le problème. Je l'ai enlevé et l'erreur a disparu.
<%@ Register assembly="Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" namespace="Microsoft.Reporting.WebForms" tagprefix="rsweb" %>
j'ai eu cette erreur en allant de la version 10.0.0.0, i.e. "Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
vers la version 11.0.0.0, i.e.
"de Microsoft.ReportViewer.WebForms, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91"
il a fallu un certain temps avant que je comprenne que non seulement la version a été modifiée, mais aussi la clé publique, comme vous pouvez le voir ci-dessus.
j'ai eu la même erreur pour un package différent. Mon problème était qu'un projet dépendant faisait référence à une version différente. Je les ai changés pour être la même version et tout allait bien.
ma solution est:
- copier la dll Microsoft.ReportViewer.WebForms.dll dans le dossier Bin de votre projet.
- Supprimer votre référence.
- ajouter une nouvelle référence à partir du dossier bin.
j'espère que cela peut vous aider.
ma version d'essai de DevExpress avait expiré. Essayez de le reconduire à nouveau.