11

我第一次尝试使用自定义程序集将报告部署到服务器。我能够在没有程序集的情况下部署相同的报告。我正在使用 Reporting Services 2012 (Visual Studio 2010) 来部署报表。

这是我尝试部署时收到的完整错误消息:

加载代码模块时出错:'SGA.Reporting,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null'。详细信息:无法加载文件或程序集“SGA.Reporting,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null”或其依赖项之一。该系统找不到指定的文件。

我已经阅读了关于同一问题的几篇文章,但其中没有解决我的问题。它是为 .NET Framework 4.0、AnyCPU 编译的 dll。

在我正在部署的本地 PC 上,我已将我的 dll 复制到所有这些文件夹: C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies C:\Windows\Microsoft.NET\Framework\v4.0.30319 C:\Windows\Microsoft.NET\Framework64\v4.0.30319

在我部署到的服务器上,我已将我的 dll 复制到所有这些文件夹中: C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies C:\Windows\Microsoft.NET\Framework\v4.0.30319 C:\Windows\Microsoft.NET\Framework64\v4.0.30319

有任何想法吗?

4

3 回答 3

12

原来我需要将 dll 复制到报表服务器上的这个文件夹中:%ProgramFiles%\Microsoft SQL Server\MSRS10_50.MSSQLSERVER\Reporting Services\ReportServer\bin

如果您只想将报表部署到报表服务器,那么这是报表服务器上唯一需要它的地方。

于 2013-01-04T21:44:50.463 回答
3

我有类似的问题。我只在公共集会上拥有它。一旦我将 dll 添加到私有程序集位置,它就可以工作了。您是否以管理员身份运行 VS?

于 2013-01-03T16:07:56.413 回答
1

另一种解决方案是将您的程序集部署到 GAC。您需要“强名称”它才能部署到 GAC。当它在 GAC 中时,您不需要在 Reporting Services\ReportServer\bin 中拥有它

于 2013-06-06T14:13:46.247 回答