Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.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# 将新项目添加到VS解决方案时,会打乱解决方案的依赖关系_C#_Visual Studio 2010_Dependencies - Fatal编程技术网

C# 将新项目添加到VS解决方案时,会打乱解决方案的依赖关系

C# 将新项目添加到VS解决方案时,会打乱解决方案的依赖关系,c#,visual-studio-2010,dependencies,C#,Visual Studio 2010,Dependencies,我们有大约20个项目和6种不同的构建配置的大型项目解决方案。每个构建配置都有自己的依赖项,当向解决方案添加新项目时,它会更改其他项目的依赖项,并且无法编译。关于如何在不影响其他项目及其依赖关系的情况下添加新项目,有什么想法吗 谢谢。以下是解决问题的步骤: 从解决方案中删除添加的项目 将解决方案文件恢复到其原始状态 在记事本++中打开最近添加的project.csproj文件,然后打开.csproj文件 任何已经在解决方案中的项目 比较两个文件之间的所有属性并确保 它们具有相同的构建配置、配置,

我们有大约20个项目和6种不同的构建配置的大型项目解决方案。每个构建配置都有自己的依赖项,当向解决方案添加新项目时,它会更改其他项目的依赖项,并且无法编译。关于如何在不影响其他项目及其依赖关系的情况下添加新项目,有什么想法吗


谢谢。

以下是解决问题的步骤:

  • 从解决方案中删除添加的项目
  • 将解决方案文件恢复到其原始状态
  • 在记事本++中打开最近添加的project.csproj文件,然后打开.csproj文件 任何已经在解决方案中的项目
  • 比较两个文件之间的所有属性并确保 它们具有相同的构建配置、配置,
    平台,平台目标。(只需从你的旧电脑中获取所有这些信息 (项目)
  • 保存新项目的.csproj文件,然后右键单击 visual studio中的解决方案,并添加现有项目,该项目将
    要添加的项目

  • 结果:VisualStudio不涉及解决方案依赖项

    我记得当20个项目看起来很大的时候。。。您要添加的项目是否与解决方案中当前的任何其他项目具有相同的名称或GUID?它是否对已加载到您的解决方案中的其他项目有自己的依赖关系?您的解决方案中的现有项目是否与您要添加的新项目有依赖关系?IME,当所有项目都在同一个解决方案中时,构建顺序几乎可以自行解决。然而,当它们不是同一个解决方案的一部分时,这是很棘手的。您可以在解决方案属性中配置生成顺序。首先,我将使用像NDepend这样的工具绘制依赖关系图。确定循环引用等。如果您仍然感到卡住,请发布图表。它是否真的更改了引用,或者只是创建了一个新的解决方案级别配置,其中一些项目被排除在构建之外?它不会创建新的解决方案级别配置,但会重新排序项目构建顺序