我知道相同的标记行已用于回答相同类型的问题,但是,那里的答案没有帮助。 我的解决方案中有几个项目。一个项目称Prj.Infrastructure有一些接口IA,IB,IC,ID和IE,它们由项目Prj.Bridge中的某些C ++ / CLI类实现,也用于Prj.UI中的一些winforms。
当我单独构建每个项目时,它构建良好,但是当我构建整个解决方案时,它由于某种原因丢失了接口IA,IB和IC,并且Prj.UI无法发现它给出了错误,如
错误6找不到类型或命名空间名称'IA'(您是否缺少using指令或程序集引用?)D:\ svnroot \ branches \ blah1 \ blah2 \ blah3 \ blah4 \ blah5 \ blah6 \ INVS的.cs
INVS正在实施IA。
我尝试过以下方法: 我已经清理并建造了很多次。 我检查了我的解决方案中的所有项目,并且未选中客户端配置文件复选框。 删除了Resharper(因为Resharper在识别引用的项目时没有遇到任何麻烦,我认为它可能值得一试) 删除并重新添加了引用和using语句。 还尝试在其他计算机上检查我的分支,但它仍然失败。
请帮助我,我已经被困了2天了。
编辑:适用于.Net 3.5
答案 0 :(得分:0)
溶液 - >属性
常见属性 - >项目依赖项
Prj.UI依赖于Prj.Infrastructure
答案 1 :(得分:0)
对不起大家。原来我的同事在构建脚本中添加了一个注册表(在HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft.NETFramework \ AssemblyFolders下添加了键)指向另一个构建文件夹(来自另一个源代码控制签出),所以每当我构建整个解决方案时,它从中获取数据,并没有认识到新添加的接口。对不起,问题是,我们可能会为此问题增加一个可能性。检查您的注册表,因为Visual Studio在构建整个解决方案时获取其构建信息。 VS使用此文件夹来解析引用(即运送API)。它正在解析此文件夹中的库而不是分支输出文件夹,它是如何将添加引用添加到“添加引用”部分中的