我当前重命名项目文件夹的解决方案是:

从解决方案中删除项目。在Visual Studio外部重命名文件夹。将项目重新添加到解决方案中。

有更好的方法吗?


当前回答

TFS用户:如果您使用的源代码管理要求您在重命名文件/文件夹之前警告它,请查看此答案,其中包含了所需的额外步骤。


要在Visual Studio中重命名项目的文件夹、文件(.*proj)和显示名称,请执行以下操作:

关闭解决方案。在Visual Studio外部重命名文件夹。(如果使用源代码管理,请在TFS中重命名)打开解决方案,忽略警告(如果要求从源代码管理加载项目,请回答“否”)。浏览所有不可用的项目。。。打开项目的财产窗口(高亮显示项目并按Alt+Enter或F4,或右键单击>财产)。将属性“文件路径”设置为新位置。如果属性不可编辑(如在Visual Studio 2012中),则直接在另一个编辑器(如Notepad++)中打开.sln文件,并更新其中的路径。(您可能需要首先在TFS等中签出解决方案)重新加载项目-右键单击>重新加载项目。通过高亮显示项目并按F2键,或右键单击>重命名,更改项目的显示名称。

注意:其他建议的解决方案涉及删除项目,然后将其重新添加到解决方案中,这将破坏项目引用。

如果执行这些步骤,则还可以考虑重命名以下内容以匹配:

装配默认/根命名空间现有文件的命名空间(使用Visual Studio中的重构工具或ReSharper的不一致命名空间工具)

还要考虑修改以下程序集属性的值:

程序集产品属性AssemblyDescriptionAttribute程序集标题属性

其他回答

这在Visual Studio 2019中对我来说效果很好。

在Visual Studio中重命名解决方案和项目正常单击文件名。在Visual Studio中重命名命名空间。在主项目页面上重命名所需的元素(发布位置、应用程序、默认名称空间等)。正如正确指出的那样,这对文件夹没有任何作用,但它确实重命名了项目文件,并在VisualStudio中将所有内容联系在一起。关闭Visual Studio。重命名文件夹。打开Visual Studio并回答“否”以从源代码管理获取项目。删除卸载的项目引用。使用“从解决方案添加现有项目”将每个项目添加回。这将一切联系在一起,并为我构建了项目。

请评论并纠正以上任何不起作用的内容。

在文本编辑器中打开.sln,然后在下面的行中将<FolderName>更改为新的文件夹名称项目(“{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}”)=“Ricky”,“\.csproj”,“{021CC6B0-8CFB-4194-A103-C19AF869D965}”

这就是我在VS19中重命名现有项目的方式。

关闭visual studio项目重命名并打开驱动器上的每个项目文件夹名称重命名每个.csproj打开.sln文件并重命名每个.csproj事件的项目目录前缀。在visual studio中打开.sln文件并重建通过浏览每个文件或使用ReplaceAll,用新的名称空间引用更新以前的名称空间

更改文件夹名称后,在记事本中打开.sln文件并将路径更改为新路径。

我已经做了很多次了。能够重新调整现有项目的用途,但能够重命名名称空间、文件和文件夹(包括文件/目录名)中的文本,这非常有用。

从根文件夹开始使用递归查找和替换意味着重命名不会中断到解决方案文件和项目引用中的项目的链接。

为此,我创建了一个项目来实现这一点。该应用程序还努力忽略版本控制文件夹,如.git、.svn和.vs设置文件。更多信息请参阅自述文件。

https://github.com/garethrbrown/vs-project-rename