4

%WINDIR%/Assembly に Microsoft.ReportViewer.WinForms バージョン 11.0.0.0、publickeytoken 89845dcd8080cc91 があります。実際のファイル バージョンは 11.0.3412.0 です。2012 ReportViewer 再頒布可能パッケージがインストールされています。.NET 4.0 C# プロジェクトへの参照を追加しようとしましたが、選択できるのは 10.0.0.0、ファイル バージョン 10.0.40219.329 だけです。したがって、%PROGRAMFILES% (x86)/Microsoft Visual Studio 12.0/ReportViewer/Microsoft.ReportViewer.WinForms.dll を参照すると、11.0 バージョンとして表示されますが、csproj ファイルを追加すると、10.0 バージョンが参照されます。

<Reference Include="Microsoft.ReportViewer.WinForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\Microsoft Visual Studio 12.0\ReportViewer\Microsoft.ReportViewer.WinForms.dll</HintPath>
    </Reference>

ビルドして 32 ビット マシンにデプロイすると、不足している DLL (10.0.0.0) から dll プロンプトを使用すると、2012 バージョンが取得されないのはなぜですか?

4

1 に答える 1

5

私はそれが起こったとは言えません。Microsoft の Web サイトから再頒布可能ファイルをインストールできました。バージョン 11.0 のアセンブリが GAC にインストールされています。

「Microsoft Visual Studio 12.0」ディレクトリがある場所にあるVisual Studio 2013がインストールされていません。しかし、「Microsoft Visual Studio 11.0」ディレクトリにも正しい ReportViewer.WinForms アセンブリがあります。

正しい参照が存在するかどうかを本当に確認したい場合は、プロジェクト ファイルを手動で編集して、次のReportViewer.WinFormsように編集してのバージョン 11 を参照してみてください。

<Reference Include="Microsoft.ReportViewer.WinForms, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL" />

これにより、GAC からアセンブリを読み込んでみる必要があります。しかし、それがうまくいくとは思えません。正直なところ、SSRS 2012 Report Viewer Runtime 再頒布可能パッケージを再インストールしてみます。

于 2014-04-16T16:10:14.127 に答える