Bjø*_*ten 5 c# teamcity continuous-integration entity-framework assembly-references
我有一个在我的计算机上运行良好的项目,但是当我尝试在 Team City 上构建它时,我收到以下源文件的构建错误
using System.Data.Entity;
using System.Data.Entity.Validation;
CS0234: The type or namespace name 'Validation' does not exist in the namespace 'System.Data.Entity' (are you missing an assembly reference?)
Run Code Online (Sandbox Code Playgroud)
我是否需要在运行 Team City 的服务器上手动安装 Entity Framework 才能使其正常工作?
激活 Nuget 还原后更新:
这一定是某种配置问题。
我可以在构建日志中看到构建过程正在复制 .dll:
[Copy] Copying file from "D:\TeamCity\agent1\work\541c9f462afc285d\packages\EntityFramework.5.0.0\lib\net45\EntityFr amework.dll" to "bin\Release\EntityFramework.dll".
[16:51:55][Copy] Copying file from "D:\TeamCity\agent1\work\541c9f462afc285d\packages\EntityFramework.5.0.0\lib\net45\EntityFramework.xml" to "bin\Release\EntityFramework.xml".
Run Code Online (Sandbox Code Playgroud)
但不久之后,它正在考虑一堆不同的位置,但不包括 bin\Release\EntityFramework.dll”文件夹。
更新 2:
手动将 .dll 复制到我的类库的 bin/release 文件夹有助于构建通过,但显然这不是可行的解决方案,因此需要继续找出如何正确配置它。
更新 3:
从来没有找到这样的令人满意的解决方案,我痛心地说,这样就可以解决这个问题是非常欢迎任何天才。:)
由于错误表明您缺少程序集。正如 @Shriroop 所建议的,这是在 EF 包中。
在编译步骤之前,添加 Nuget Installer 步骤。您应该设置几个选项,解决方案名称的路径,我建议您使用 nuget 2.7+ 和恢复模式:恢复。
要在 teamcity 中安装最新的 nuget 版本,请转到管理 > Nuget 设置 > NuGet.exe 并获取最新版本。
以下是 NuGet 安装程序步骤的示例:http://img.hihi.si/Upload/5PUm.png
| 归档时间: |
|
| 查看次数: |
4750 次 |
| 最近记录: |