7

バージョン 9.0.0.0 の Microsoft.ReportViewer.WebForms を参照していた ASP.NET アプリケーションがあり、バージョン 11.0.0.0 の Microsoft.ReportViewer.WebForms を参照するように変更しました。2台のマシンでアプリケーションを実行すると、次のエラーが発生します

コンパイル エラー

説明:この要求を処理するために必要なリソースのコンパイル中にエラーが発生しました。次の特定のエラーの詳細を確認し、ソース コードを適切に変更してください。

コンパイラ エラー メッセージ: CS0433: タイプ 'Microsoft.Reporting.WebForms.ReportViewer' は、'c:\Windows\assembly\GAC_MSIL\Microsoft.ReportViewer.WebForms\9.0.0.0__b03f5f7f11d50a3a\Microsoft.ReportViewer.WebForms.dll' と'c:\Windows\assembly\GAC_MSIL\Microsoft.ReportViewer.WebForms\11.0.0.0__89845dcd8080cc91\Microsoft.ReportViewer.WebForms.DLL'

web.config のすべてのバージョン番号が 11.0.0.0 に更新されていることを確認しました

4

2 に答える 2

5

Web.configにdependentAssemblyを追加しようとしましたが、役に立ちませんでした。

<dependentAssembly>
  <assemblyIdentity name="Microsoft.ReportViewer.WebForms" publicKeyToken="89845dcd8080cc91" />
  <bindingRedirect oldVersion="8.0.0.0-10.0.0.0" newVersion="11.0.0.0" />
</dependentAssembly>

ただし、PublicKeyToken が 11.0.0.0 dll で変更されたため、役に立ちませんでした。

最後に、web.configにqualifyAssemblyノードを追加することで問題を解決できました

<qualifyAssembly partialName="Microsoft.ReportViewer.WebForms" fullName="Microsoft.ReportViewer.WebForms,version=11.0.0.0,culture=neutral,publicKeyToken=89845dcd8080cc91" />
于 2013-03-22T08:18:06.543 に答える