Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# TFS升级假货生成错误_C#_Tfs_Tfsbuild_Microsoft Fakes - Fatal编程技术网

C# TFS升级假货生成错误

C# TFS升级假货生成错误,c#,tfs,tfsbuild,microsoft-fakes,C#,Tfs,Tfsbuild,Microsoft Fakes,我们刚从2013年迁移到TFS 2015,现在在构建赝品时出现了很多TFS构建错误。有许多类似于此的错误(Admin web app有一个名为Admin.tests的测试项目):类型“System.Data.Entity.DbContext”是在未引用的程序集中定义的。必须添加对程序集“EntityFramework,版本=6.0.0.0,区域性=中性,PublicKeyToken=b77a5c561934e089”的引用。[C:\Builds\$(BuildAgentId)\$(BuildDe

我们刚从2013年迁移到TFS 2015,现在在构建赝品时出现了很多TFS构建错误。有许多类似于此的错误(Admin web app有一个名为Admin.tests的测试项目):
类型“System.Data.Entity.DbContext”是在未引用的程序集中定义的。必须添加对程序集“EntityFramework,版本=6.0.0.0,区域性=中性,PublicKeyToken=b77a5c561934e089”的引用。[C:\Builds\$(BuildAgentId)\$(BuildDefinitionPath)\f3651c6c\TeamProject\WebApps\Admin\Admin.Tests\obj\Release\Fakes\ctp\f.csproj]
。 这些解决方案可以在本地构建,也可以在TFS2013构建系统下构建。假货配置中有什么需要更改的吗?

两个解决方案:

1) 确保勾选“允许NuGet在构建期间下载丢失的包”

转到工具-->选项-->包管理器-->常规


2) 看起来您的EntityFramework版本不正确。请使用NuGet软件包安装程序下载正确的版本。

我们在构建服务器上遇到了许多问题,目前解决问题的唯一方法是将Fakes/和FakesAssembly/文件夹签入TFS

当然,在本地编译时,这会增加问题,因为文件现在是只读的,因为它们受源代码控制


实际上,我们正在从使用假货迁移到使用MoQ这样的模拟框架。

感谢您的回复。问题不在于EntityFramework,而在于Microsoft Fakes。从该错误可以看出。我在各种类型上都会遇到类似的错误。谢谢。我们解决了这个问题,但不是在将赝品整合到单个项目中并从所有测试项目中引用它,然后操纵测试步骤设置之前。我同意MoQ会是更好的选择,最终会迁移。