我目前重命名项目文件夹的解决方案是:
从解决方案中删除项目.
在Visual Studio外重命名该文件夹.
将项目重新添加到解决方案中.
有没有更好的方法?
TFS用户:如果您使用的源代码控制要求您在重命名文件/文件夹之前对其进行警告,那么请查看此答案,其中包含所需的额外步骤.
要在visual studio中重命名项目的文件夹,file(.*proj
)和显示名称:
关闭解决方案.
重命名Visual Studio外部的文件夹.(如果使用源代码管理,则在TFS中重命名)
打开解决方案,忽略警告(如果要求从源控件加载项目,则回答"否").
浏览所有不可用的项目......
打开项目的属性窗口(突出显示项目,然后按Alt+ Enter或F4,或右键单击>属性).
将属性" 文件路径 "设置为新位置.
如果属性不可编辑(如在VS2012中),则.sln
直接在另一个编辑器(如Notepad ++ )中打开文件,然后更新其中的路径.(您可能需要先在TFS中签出解决方案等)
重新加载项目 - 右键单击>重新加载项目.
更改项目的显示名称,突出显示并按F2,或右键单击> 重命名.
注意:涉及删除然后将项目重新添加到解决方案的其他建议解决方案将破坏项目引用.
如果您执行这些步骤,那么您可能还会考虑重命名以下内容以匹配:
部件
默认/根命名空间
现有文件的命名空间(使用Visual Studio中的重构工具或ReSharper的不一致命名空间工具)
还要考虑修改以下程序集属性的值:
AssemblyProductAttribute
AssemblyDescriptionAttribute
AssemblyTitleAttribute
您可能希望投票支持Visual Studio团队自动执行此过程.
使用*.sol,*csproj文件还有另一种方法.
打开您的解决方案文件
搜索您想要更改的*.csproj
它将是这样的(相对于*.sol文件):
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Shani.Commands.Impl", "Shani.Commands.Impl\Shani.Commands.Impl.csproj", "{747CFA4B-FC83-419A-858E-5E2DE2B948EE}"
并且只是将第一部分更改为新的diretory,例如:
Impl\Shani.Commands.Impl\Shani.Commands.Impl.csproj
当然不要忘记将整个项目移动到该目录
玩得开心.
这在VS 2015中是直截了当的(可能适用于旧版本)
在解决方案资源管理器中,右键单击 Main solution > Rename
在解决方案资源管理器中,右键单击 project (under solution) > Rename
在解决方案资源管理器中,双击或右键单击Properties >
转到应用程序选项卡,重命名Assembly name
并Default namespace
匹配.
如果您还想重命名命名空间,请打开一个类文件.右键单击namespace > Rename...
它应搜索并替换整个项目中对命名空间的所有引用.
关闭项目>重命名project folder
.
.sln
在记事本中编辑文件,更改cjproj的路径.即fu\bar.csproj --> bar\bar.csproj
伙计,我有没有挣扎过这个.遗憾的是,Visual Studio中没有单击解决方案,但是如果您正在运行Visual Studio 2012并且您的项目受Team Foundation Server的源代码控制,那么我可以在保留源历史记录的同时使用它:
(请务必阅读下面的@ mjv评论,因为他指出你可以跳过步骤5-10)
确保您已签入所有更改,因此您没有待处理的更改.
通过右键单击并选择" 删除",从解决方案中删除项目.
现在,在Windows资源管理器中,重命名项目文件夹.
返回Visual Studio,在解决方案资源管理器中,右键单击解决方案,然后选择添加 - > 现有项目.选择在步骤2中删除的项目的项目文件,该项目文件应位于重命名的文件夹中.
现在项目又回到了解决方案中,但项目似乎没有添加到源代码管理中.要解决此问题,请打开Source Control Explorer.
在源代码管理资源管理器中找到与您在步骤3中重命名的磁盘上的项目文件夹对应的项目文件夹.
在源代码管理资源管理器中重命名该文件夹,因此它与磁盘上的项目文件夹具有相同的名称.
现在来看看您的待定更改.您应该对项目文件夹中的解决方案文件和重命名操作进行更改.
进行重建并确保一切正确编译.如果您对重命名的项目有项目间引用,则需要将它们再次添加到引用它的各个项目中.
你现在应该全部搞定.去检查一切.
上面的指南对我有用.如果它不适合您,请尝试完全删除本地解决方案,并删除工作区中的文件夹映射.重启Visual Studio以防万一.确保您确实从计算机中删除了整个解决方案.现在阅读解决方案映射到您的工作区并获取最新版本.现在尝试上面的步骤.如果在执行上述步骤时出现问题,则同样适用.只需在本地删除您的解决方案并获取最新的源代码,您就可以使用一个干净的平板.
如果您仍然遇到问题,请确保在尝试上述步骤之前未在解决方案文件中手动更改任何内容,或尝试其他"技巧".如果您更改了某些内容并将其签入,则可能需要考虑在开始搞乱项目重命名之前进行回滚.
当然,您还需要在解决方案资源管理器中重命名项目本身.您可以在上述步骤之前执行此操作,但在这种情况下,请确保在应用上述步骤之前签入该更改.你也可以做到这一点之后,但要确保你按照上面首先的步骤,并试图重新命名Solution Explorer中的项目名称前签入更改.我不建议尝试将上述步骤与解决方案资源管理器中项目名称的重命名混合使用.它可能会工作,但我建议在2个单独的变更集中进行.
目前,没有.实际上,您可以单击已损坏的项目节点,然后在属性窗格中查找属性"路径",然后单击小浏览图标并选择新路径.
瞧:)
更简单的解决方案如下:
右键单击该项目并重命名.
(可选)打开项目的属性设置并修改程序集名称(以及可选的默认名称空间)以使用新项目名称.
(可选)在源文件中选择命名空间名称,右键单击并选择"重构\重命名"以将命名空间全局重命名为新项目名称.
(可选)打开AssemblyInfo.cs文件并更改程序集名称以匹配.
保存并关闭解决方案.
使用Windows资源管理器将项目文件夹重命名为新名称.
在文本编辑器中打开SLN文件,找到项目路径的一个引用,并将其更改为使用新文件夹名称.
有4个需要的步骤,但推荐7个.尽管项目完全重命名,但在一天结束时.从技术上讲,项目的文件夹名称不必与项目本身匹配,因此即使该步骤也是可选的,但如果它们不匹配则可能会令人困惑.与程序集和命名空间名称相同.
在andersjanmyr的回答中,首先更容易重命名项目.
重命名项目.
关闭解决方案(保存).
重命名Visual Studio外部的文件夹.
打开解决方案,忽略警告.
浏览所有不可用的项目,并将属性"文件路径"设置为项目文件的新位置,即someproject.csproj.
重新加载项目.
此外,执行这些步骤后,您可能希望重命名对旧项目名称的其他引用.
在项目属性中,更新程序集名称和默认命名空间.这将更新项目文件中的以下内容......
SomeProjectName SomeProjectName
...并将摆脱错误"命名空间与文件位置不对应,应该是:'SomeProjectName'"
重命名您的根命名空间(如果您有resharper,请右键单击Namespace并转到Refactor - > Rename).
在AssemblyInfo.cs中更改旧项目名称的所有出现
对于VS2017,您可以使用我的visual studio扩展
下载
它将重命名项目:
项目位置文件夹
解决方案文件
参考其他项目
程序集名称,信息
默认命名空间
我必须自己做(使用VS2010).正如一些人回答的那样,最简单的步骤似乎是:
关闭VS项目.
打开.sln文件并重命名每个.csproj事件的项目目录前缀.
保存.sln文件
重命名硬盘驱动器上的实际项目文件夹目录,以匹配.sln文件中的更改.
打开.sln(在VS中)并重建