0

我知道相同的标语已用于回答相同类型的问题,但是,那里的答案没有帮助。我的解决方案中有几个项目。一个项目说 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 识别引用的项目没有问题,我认为它可能值得一试)删除并重新添加了引用和使用语句。还尝试在其他计算机上检查我的分支,但仍然失败。

请帮助我,我已经被困了2天了。

编辑:它适用于.Net 3.5

4

2 回答 2

0

解决方案->属性

公共属性->项目依赖项

Prj.UI 依赖于 Prj.Infrastructure

于 2012-05-16T09:17:35.857 回答
0

对不起大家。原来我的同事在构建脚本中添加了一个注册表(在 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft.NETFramework\AssemblyFolders 下添加了键)指向另一个构建文件夹(来自另一个源代码控制结帐),所以每当我构建整个解决方案时,它正在从中获取数据,并且无法识别新添加的接口。对不起这个问题,事实证明,我们可能会为这个问题增加一种可能性。检查您的注册表,因为这是 Visual Studio 在构建整个解决方案时获取其构建信息的地方。VS 使用此文件夹来解析引用(即,传送 API)。它是从这个文件夹而不是分支输出文件夹中解析一个库,它是如何将程序集添加到“添加引用”部分的

于 2012-05-17T08:24:07.977 回答