我很乐意评论这个问题的答案visual studio 2010 conditional references,但由于某种原因,我找不到这个功能,因此是一个新问题。
我的问题是条件引用只能从第二次启动开始正常工作。在解决方案的第一次启动时,或者如果我删除* .suo文件,则不处理条件引用,并且解决方案无法构建。 我的条件是这个:
<Choose>
<When Condition=" '$(Configuration)'=='DebugUsingDLL' or '$(Configuration)'=='ReleaseUsingDLL' ">
<ItemGroup>
<ProjectReference>...</ProjectReference>
</ItemGroup>
</When>
</Choose>
据我所知,所选配置存储在* .suo文件中,这就是为什么只要磁盘上存在* .suo就可以正常工作。
但是,因为我们使用解决方案来自动化我们的构建,所以我们总是在新文件夹中检出源,但是* .suo文件不能签入,因为它取决于用户。
为了更好地理解,我们使用四种配置“Debug”“Release”“DebugUsingDLL”和“ReleaseUsingDLL”,我们有不同的DLL和静态库项目:因此引用必须根据它改变。
我试图在解决方案中只有DebugUsingDLL和ReleaseUsingDLL,这意味着测试应始终为此解决方案生成true,但参考也不能正确处理。
您能否确认这看起来像IDE中的错误? 你能建议一个替代方案吗?