【问题标题】:Can't find .NET assembly from SSRS 3.0 Reports无法从 SSRS 3.0 报告中找到 .NET 程序集
【发布时间】:2015-04-08 18:09:57
【问题描述】:

我正在 SSRS 3.0 中开发一些报告,但遇到了障碍。我有一个需要调用的 .NET 方法,但我无法让它工作。我找到了一些据称解释该过程的“如何”网站,但我似乎无法使其工作。作为第一个实验,为了证明我可以做到这一点,我编写了一个“HelloWorld”小程序,它只返回两个字符串,它们之间用空格连接在一起:

using System;

namespace HelloWorld
{
    public class Hello
    {
        public static string SayHello(string hello, string world)
        {
            return hello + " " + world;
        }
    }
}

我在报告属性/参考选项卡中定义了参考;但是当我尝试运行它时,我得到了

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

我已将 DLL 复制到许多建议的位置:

  • C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies
  • C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies
  • C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\Reporting Services\ReportServer\bin
  • 包含 RDL 文件的文件夹

似乎没有任何效果。

我看到了关于编辑 rssrvpolicy.config 文件的参考;但我的系统没有。我可以创建它,但我不知道放在哪里。

我正在使用 Visual Studio 2010、Report Builder 3.0 和 SQL Server CE(我的开发机器上也安装了 SQL Server;但它不会在目标机器上)。我们不会使用报表服务器——目标机器都是独立的,很少有网络访问。

如果我可以提供任何其他信息,请告诉我。感谢您提出的任何建议。

【问题讨论】:

    标签: visual-studio-2010 reporting-services .net-assembly reportbuilder3.0


    【解决方案1】:

    听起来像是混合 DLL 的 CPU 架构问题。

    您如何编译您的 DLL(x64、x84、AnyCPU)?

    尝试将 DLL 匹配到正确的服务器 CPU 架构。然后清理解决方案并将其编译为调试或发布(没关系)。

    确保在复制新的 DLL 之前清除所有以前的 DLL 副本。 (只是为了安全起见)

    让我知道这是否适合你...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-04-24
      • 1970-01-01
      • 1970-01-01
      • 2012-06-13
      • 1970-01-01
      • 2020-08-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多