我在Visual Studio的不同解决方案中有几个C#项目。 有很多.cs文件是从不同的项目引用的(不是同一个.cs文件的副本,但是在几个项目中只有1个文件和几个引用)。
现在我已经创建了一个通用解决方案(.sln),其中导入了我的所有项目(.csproject)
我需要的是在我的所有项目中重构一些变量名。
我尝试在visual studio中打开.cs文件并执行重构,但它只在THAT项目中更改了该变量的所有名称而不是所有项目!如果我在其他项目中,我发现错误,因为找不到该变量,我不能以同样的方式进行重构...
那么,我能做什么?
我提供了一些其他信息:
所有项目在每个单独的解决方案中分别编译。
在一般解决方案中,我导入所有* .csproj,如果我同时或单独构建所有项目,他们正确构建。
许多项目中引用的所有.cs文件都是通过链接添加的,未复制
如果我在一个项目(.csproj)中打开一个常见的.cs文件,并尝试在另一个项目(.csproj)中打开相同的.cs,Visual Studio会给我错误"该文件已经存在在另一个解决方案项目中打开"
也许是最重要的事情:如果我在一个项目中打开一个常见的.cs文件,我可以在他的函数中导航...在visual studio upper中,函数有一个小菜单告诉所有函数的引用在项目内部。 好的,在这个菜单中我只看到项目里面的文件,我打开文件,而不是我的解决方案的另一个项目的参考。 例如:在文件" utility.cs"我有一个名为" TryConvertMatrix(..)"的函数。我有一个名为" river"使用此功能和另一个名为"电话"使用此功能。在两个项目中,文件" utility.cs"被添加为链接。如果我打开文件" utility.cs"来自项目" river"我看到函数的所有引用" TryConvertMatrix(..)"在项目" river"的.cs文件中但不是在里面调用.cs文件"电话"项目
在之前解释的例子中,如果我尝试重构函数的名称" TryConvertMatrix(..)" in" ConvertPerfectMatrix(..)" Visual Studio,正确地,改变所有参考内容" river"项目! 所以,当我在项目中导航时,电话"我发现所有人都打电话给" TryConvertMatrix(..)"而是新名称,所以它不能建立!而且,在这种情况下,我不能在这个项目中做一个重构因为......没有构建--->没有重构
我需要的只是更改我在解决方案中打开的所有项目中的变量名称和所有引用。
我尝试删除所有项目的bin文件夹,重新启动visual studio并重新构建 这样就没有改进......
非常感谢, 的Massimiliano