2013-02-25 80 views
3

此刻我必须在VS2012中编写C#代码,(之前是:Java(Eclipse,IDEA))。Visual Studio“重命名”重构

可能是我很奇怪的家伙,但是我喜欢当class name == class文件名。

为什么在VS2012没有选择重命名类文件同我重命名类名? (或者我找不到它)

我知道C#编译器不关心匹配类名和类文件名,但我想这样做。如果他们不一样,我不能通过它的文件名找到课程,它非常令人讨厌。

请帮助我,我很累后整理工作VS

+4

在某些情况下,如果您重命名文件,它也会提供重命名其中的类。尝试首先重命名文件,而不是类。 – Rawling 2013-02-25 11:22:47

+0

您可以在一个文件中包含多个类,因此VS并不总是自动重命名一个随机类来匹配文件的名称。 – Nolonar 2013-02-25 11:25:34

+0

@Rawling谢谢!你可以添加答案,我会接受它 – 2013-02-25 11:31:18

回答

3

如果先重命名文件时,Visual Studio通常会提供重命名类相匹配。

我不知道确切的情况是什么,但如果你每个文件坚持一个类它会工作的大部分时间。

0

您可以使用ReSharper。这个插件可以选择重命名文件以匹配类名。

+0

你想让我购买ReSharper只是为了重命名重构? :)我知道这是很棒的工具,但我不需要它。我是Java开发人员,C#只适用于一个项目 – 2013-02-25 11:33:01

+0

如果只是很短的时间段您可以使用试用版或ReSharper Early Access Program(尽管并非总是可用) – 2013-02-25 11:36:09

0

这是VS可悲的没有的功能。您可以提供一些重构插件,如Resharper或CodeRush或Refactor! Pro ...

他们都有一个价格和他们自己的粉丝群。据我所知CodeRush作为一个功能非常有限的免费版本,但也许“重命名文件”是其中之一,你需要尝试。

另一种办法是找到一个延伸(或开发一个)会替你,只是头部到Visual Studio Gallery找到一个。 =)

0

您只需指向要更改的对象,右键单击并使用重构 - >重命名。弹出的重构窗口将会出现。选择您的选项并点击“确定”。

+0

弹出窗口不会要求输入新名称或旧名称。这应该如何工作? – xr280xr 2017-08-22 20:45:53

+0

只有从解决方案资源管理器执行此操作时,这才起作用,这并不理想。 – crush 2017-12-07 19:33:07

0

Rawling's答案解决这一行(因为我没有足够的代表,只是作出评论):

我不知道确切的情况是什么,但如果你坚持每个文件中的单个类它会工作大部分时间

为了澄清,Visual Studio将提供重命名,当你只要在类中定义更改文件名重构类命名空间。如果您选择不使用名称空间,则无法访问此IDE。至少VS VS 2017 Pro(这是最新的答案),这是真实的。

相关问题