我有一个相当复杂的Visual Studio解决方案(2010年,但这不重要),我需要重命名。

我想重命名文件夹以匹配新的解决方案名称,但我无法找到自动重构文件夹名称的方法,而且查看每个项目文件将是一件痛苦的事情。

有官方的做法吗?


当前回答

如果要重命名解决方案,可以执行以下步骤。

Backup.First things first, make sure to always create a backup file.Simply copy your project to a different directory. In Solution Explorer, right-click the project, select Rename, and enter a new name. In Solution Explorer, right-click the project and select Properties. On the Application tab, change the "Assembly name" and "Default namespace". Open any .cs and rename all namespace Change the AssemblyTitle and AssemblyProduct in Properties/AssemblyInfo.cs. Delete bin and obj directories physically. Rename the project physical folder directory. Open the Sln file (within notepad or any editor) and change the path to the project. Cleans and Rebuild the project

https://learn.microsoft.com/en-us/answers/questions/1028483/rename-solution-and-related-projects-in-a-aspnet-w.html细节……

其他回答

连同这个链接的答案

https://stackoverflow.com/a/19844531/6767365

重命名这些文件。 我把我的项目重命名为MvcMovie,它工作得很好

删除/添加项目文件方法

这个方法完全是为了重命名项目的目录,就像在Windows资源管理器中看到的那样。

使用GIT、SVN或WinZip(很重要!)等工具备份整个项目。 在Visual Studio中的解决方案中,删除项目。 在Windows资源管理器中重命名目录。 在Visual Studio中再次添加项目。

优势

您可以使Windows资源管理器中的目录与解决方案中的项目名称相匹配。

缺点

如果删除一个库,它将从其他项目中删除对该库的任何引用。在此之后,解决方案可能无法编译,直到您将该库的引用添加回(这非常简单)。这就是第一步(备份)如此重要的原因。 如果您有源代码控制,则会丢失文件的历史记录。

右键单击一个项目并选择“在Windows资源管理器中打开文件夹”对于跟踪项目在执行此过程中的存储位置非常有用。

如果在遵循建议的解决方案之后,您已经设法重命名了一个新的解决方案(假设从www.oldsite.com重命名为www.newsite.com),但仍然使用旧的Web站点项目名称,因为您有一个旧的“ASP。Net Web站点”,然后遵循这些额外的步骤(假设从project1到project2)。

安装和旧的Visual Studio 2017 用它打开项目,右键单击项目->添加->新建项目。 选择“已安装-> Visual c# -> Web ->以前版本-> ASP. exe”。NET空网站”并将其命名为“www.newsite.com” 将Visual Studio 2017中的所有文件和文件夹从旧站点移动到新站点,直到旧站点仍然为空。 右键单击“www.oldsite.com”并删除它。

现在您可以保存所有内容,并使用Visual Studio 2022再次打开它。所有这些都是需要的,因为VS2019/VS2020不支持“旧的”ASP。Net网站创建,但只编辑。

使用notepad++的“在文件中查找”功能对我来说很好(ctrl + H,在文件中查找)。

http://notepad-plus-plus.org/download/v6.2.2.html

我尝试了Visual Studio Project Renamer,但是,它在我尝试的少数情况下抛出异常。

我在CopyWiz上取得了很大的成功。

我与他们没有任何关系,我还没有为它付钱,但我可能很快就要为它付钱了,因为它似乎是唯一一个对我的c#和c++项目都有效的工具。我确实希望他们能赚点钱,并继续改进它。