2010-09-03 76 views
1

我想构建一个在构建服务器上使用Crystal Reports而不安装Visual Studio或Crystal Reports运行时的.NET程序集。构建在构建服务器上使用Crystal Reports的.NET程序集

我们在我们的代码中定位的Crystal Reports版本是与Visual Studio 2008一起出现的版本,我们正在使用MSBuild构建此项目。

我已经将我的项目中引用的dll的所有内容都复制到构建服务器上名为Assemblies的文件夹中,并且已尝试在我的csproj.user文件中设置引用路径,并且也通过复制此相同PropertyGroup放入我的项目文件,但仍然没有运气。我收到的错误看起来像下面的例子。

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

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

+0

您是否已将所有组件引用设置为“copy local”?您可以在参考的属性页面中验证这一点 – jeroenh 2010-09-03 19:54:34

回答

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> 

甚至更​​重要的是它的工作原理!

相关问题