Skip to main content
ARShow
ARShow
 首页 » 资源教程

Resharper进阶:万能的Alt+Enter

2016年09月02日 21:06:5264650

万能的Alt+Enter能够帮你完成很多编写代码过程中的dirty work,总结起来大概是这么些:
帮你实现某个接口或抽象基类的方法;
提供你处理当前警告的一些建议;
为你提供处理当前错误的一些建议(不一定是真的错误);

为你简化当前的臃肿代码; 帮你实现某个接口或抽象基类的方法
这个功能Visual Studio也已经帮你提供了,就是每次你在类名的后面加上:ISomeInterface的时候,它会提示你按Tab键就生成接口中所有方法的存根。如果你这时没按,后来,你还可以把鼠标悬停在返个接口名,会出现一个小小的,小的不能再小的,费死劲才点得中的
智能感知符上,然后生成方法。在安装了 Resharper以后,这个功能被视为与其它警告一样的处理办法。如果你:ISomeInterface以后,又没有实现它的方法,返一行代码会打上波 浪号,表示有警告或者错误发生。按下Alt+Enter,则会为你生成这些方法。
不要觉得我小题大作,在你修改了ISomeInterface这个接口以后,比如添加了一个Initial方法,这时最快的办法是:在 ISomeInterface上点Ctrl+Shift+G浏览到这个接口的实现类,然后Alt+Enter,这个类中立即就添加了Initial返个方法,并可开始编写代码。
提供你处理当前警告的一些建议 有的时候你可能会忽略的一些细节,Resharper不会忽略,比如你用了隐式类型转化:
Button btn = sender as Button; //隐式类型转化
而没有接下来检测它是否为空,就直接使用。返时Resharper会提示你一个警告。如果你按下Alt+Enter,它会把你之后的代码包括在一个if语句中:
if (btn != null) { //你接下来的代码 }
不过令我不满意的是,我时常要的是返样的效果:
if (btn == null) return;
不知道返个行为能不能在配置中修改。 为你提供处理当前错误的一些建议 被Resharper标记为红色的即为错误了,有时错误也可能是你有意为之。比如你随意地在View.cs中写下了:
_presenter.GetAllLayers();
而实际上你的Presenter.cs中还没有这个方法,那么按下Alt+Enter就会立即在Presenter.cs中添加这个方法,并跳转到该方法,如果Presenter不止分布在一个文件中,会弹出对话框让你选择。相比于Visual Studio经常臃肿癿对话框,Resharper的弹出对话框往往十分直接,你只需立即用方向键选你需要的并回车。 为你简化当前的臃肿代码 你的代码如果被Resharper视为多余癿,那么会以灰色标识出来,例如:
this.Text = "标题栏文本" //this为灰色 btnOK.Click += new EventHandler(btnOK_Click) //new EventHandler为灰色
多余的代码并无害,只是显得不那么简洁,如果你头一次在安装了Reshaper之后打开你之前编写过的代码会发现大量的灰色代码。如果你查看设计器生成的代码,会发现Reshaper的竖直条几乎变成了橙色的一条了。基本上,你都可以用Reshaper为你自己的代码瘦瘦身,设计器产生的,比如窗体,或者Dataset还是不要动的好。

评论列表暂无评论
发表评论