首页 文章

构建在构建服务器上使用Crystal Reports的.NET程序集

提问于
浏览
1

我正在尝试构建一个.NET程序集,它在构建服务器上使用Crystal Reports而不安装Visual Studio或Crystal Reports Runtime .

我们在代码中定位的Crystal Reports版本是Visual Studio 2008附带的版本,我们使用MSBuild构建此项目 .

我已经将项目中所有引用的dll复制到构建服务器上的一个名为Assemblies的文件夹中,我尝试在csproj.user文件中设置引用路径,并将同一个PropertyGroup复制到我的项目中文件,但仍然没有运气 . 我得到的错误看起来像下面的例子 .

MyFile.cs(5,7):错误CS0246:找不到类型或命名空间名称'CrystalDecisions'(您是否缺少using指令或程序集引用?)[c:\ MySolution \ MyProject ...]

有没有人对我应该如何或是否能够使这个工作有任何建议?

1 回答

  • 2

    看起来我自己在项目文件中试验了我的引用元素之后想出了这个 . 我的Crystal Reports程序集引用现在看起来像下面的示例 .

    <Reference Include="CrystalDecisions.CrystalReports.Engine, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692fbea5521e1304">
        <HintPath>$(MSBuildProjectDirectory)\..\Libraries\CrystalReports\CrystalDecisions.CrystalReports.Engine.dll</HintPath>
    </Reference>
    <Reference Include="CrystalDecisions.ReportSource, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692fbea5521e1304">
        <HintPath>$(MSBuildProjectDirectory)\..\Libraries\CrystalReports\CrystalDecisions.ReportSource.dll</HintPath>
    </Reference>
    <Reference Include="CrystalDecisions.Shared, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692fbea5521e1304">
        <HintPath>$(MSBuildProjectDirectory)\..\Libraries\CrystalReports\CrystalDecisions.Shared.dll</HintPath>
    </Reference>
    

    更重要的是它有效!

相关问题