【C#】让ReSharper灰色显示未使用的非私有成员的关键

原文:【C#】让ReSharper灰色显示未使用的非私有成员的关键

环境:VS2010+ReSharper8

先说答案:

1、在Inspection Severity中设置Non-private accessibility为Warning。如图:

该页面在ReSharper菜单→Options中。贴士:选项是可以搜索的,搜索框在选项区上方

2、启用Solution Wide Analysis(SWA)。启用方法有几种:

- 双击VS最右下角落的圆点,或右击圆点→Analyze Errors in Solution。如图:

- 菜单ReSharper→Options→Code Inspection→Settings→Analyze errors in whole solution,勾上它。如图:

启用该功能会弹提示,说会降低VS性能,占用更多内存啥的,Ok即可。但如果项目不小或机器太烂,确实要慎重。我的理解,启用后,RS会在整个解决方案范围内检查成员使用情况,你想想,一个Solution那么多Project,那么多class member,每一个都要检查,着实不是个轻量简便的活。另外提个醒,这功能也就在当前Solution范围内检查,对于有些很公用的类成员,它不在这个方案里使用,但可能在其它方案里用到,所以也别见到灰色成员就剔~反正大家都懂的,是我啰嗦。

下面开始叽歪:

发现这问题是因为,一直以来都知道对于无任何使用的私有成员,ReSharper是会把它显示为灰色的,对于我这种轻度代码洁癖患者来说,这功能很好,但非私有成员就不会灰显,在选项中也找到了Non-private accessibility,但设为Warning也没用,网上搜半天也搜不到说这问题的,搞的我还以为是RS的bug,专程上书RS feedback,人支持攻城狮很好,很快就给了我回信,看名字还是个雌的。但一开始她也没说到重点,说让我重新建个项目/解决方案啥的看看,后来又让我把RS配置导给她……反正来来回回沟通了若干封Email,可苦了我那蹩脚的english,在此感谢my friend - MS的MVP Alexis(这哥活跃在MS支持社区),以及感谢金山词霸~不用感谢国家了吧,他/它们在翻译上给了我很大帮助,不然光凭我很难完成这次求助。

后来甚至成功勾引到对方给我远程协助~关于远程工具的选用还有个题外,一开始我说我用的是一款叫QQ的IM,这工具有简单的远程协助功能,看您方便不……并且附上QQ国际版的官网给她~尼玛无意中还帮TX推广了下,后来她说要不用TeamViewer吧,看来这QQ在她们那儿还是不受待见呐。后来约好时间,我开好TV,告诉她ID和PWD,她远程过来,我演示了下“问题”给她看,然后她又把RS配置导了一遍,说带回去研究研究,有消息通知我,就闪人了。

过了天把她回信了,这次说到重点了,就说了下这个SWA的意义,让我启用看看,果然问题解决了,然后我对她千恩万谢,然后就没然后了。我估计她也是请教了其它人,才戳中了问题的关键。

Anyway,以后总算可以清晰明了的剔除无用的私有和非私有成员了,再次感谢RS,感谢Alexis,感谢金山词霸。

- 文毕 -

时间: 2024-11-16 14:29:03

【C#】让ReSharper灰色显示未使用的非私有成员的关键的相关文章

vb-VB显示未找到方法或数据成员

问题描述 VB显示未找到方法或数据成员 Private Sub Text1_click(Index As Integer) Dim mianji As Single mianji = 0.0061 * Form1.Text1.Text + 0.0128 * Form1.Text3.Text - 0.1529 Text1.Text = mianji FORM1中已经有了变量 解决方案 数据类型不对吧!文本框里面输入的是文字格式的,需要用到VAL函数来转换.

qq显示未启用 网站qq显示未启用怎么办

设置临时会话,一般都会出现下面的状况.QQ放在网站上作为客服,必须设置临时会话. (1) (2) (3)或者点击之后,要求加为好友才可以对话.   解决这个问题的步骤如下:   一.登陆腾讯官方网站:http://wp.qq.com/ 二.登陆之后,点"设置",按下图所示,全部打勾.这个必须设置,不设置,不能临时会话,就会显示"未启用".这一步是关键,必须设置. (1)先看服务有没被停用:如停用了,请"启用服务" (2)再看"会话能力设

Win8.1系统右下角网络图标显示“未识别的网络”如何解决

Win8.1系统右下角网络图标显示"未识别的网络"如何解决   一.拨号上网 直接拨号上网出现此故障,为机器无法获得IP地址(宽带连接是使用PPPOE协议的连接外网,本地连接使用的是TCP/IP协议.拨号时本地连接的物理连接正确,可是有可能没有获取到上层设备分配的局域网IP.则提示无法上网)网卡有问题.系统有问题.驱动有问题.猫有问题等. 二.连接路由器上网 连接路由器上网出现此提示,证明机器已经获得IP地址(内网已经连接正常,但是无法访问外网),系统有故障,路由器有故障,网线有故障,

软件-卸载程序显示未正确安装

问题描述 卸载程序显示未正确安装 软件做了个卸载程序,就是删除文件,快捷方式,注册表.结果卸载完成后弹出个对话框显示This Program Might Not Have Installed Correctly.这个是什么情况啊 解决方案 你用的什么打包工具?估计不兼容,用installshield的新版本 解决方案二: 这个程序可能没有正确的安装好~ 你肯定还是没有完全卸载好,仔细看看,或者用一些智能卸载软件,帮你一键搞定 解决方案三: 1 打包工具的问题2 你使用打包工具的问题具体是什么原因

Win8打开网页总是显示未响应是怎么回事

Win8打开网页总是显示未响应是怎么回事   解决方法 1.首先打开IE浏览器,然后点击菜单栏上方的"菜单---Internet选项" 2.在弹出来的Internet选项的设置窗口中,切换到"高级"选项卡下,然后鼠标拉动滑动按钮找到加速的图形,然后将"使用软件呈现而不是用GPU呈现"前面的勾取消掉; 3.最后点击应用按钮,在点击确定按钮,关闭浏览器再重启即可解决了.

XP系统开机后显示未找到comctl32.dll文件怎么办

  XP系统开机后显示未找到comctl32.dll文件怎么办 1.首先到网上下载comctl32.dll文件或到朋友那边拷贝一下这个文件,然后将下载或拷贝过来的存在路径"C:Windows---System32目录下"; 2.接着将文件放到目录下,然后打开开始菜单中的运行选项打开运行对话框;电脑常识 3.最后在打开的运行对话框中输入"regsvr32 comctl32.dll",回车之后即可.

Win7本地连接显示未识别网络无Internet访问解决

  win7系统中,通过ADSL PPPOE进行宽带上网,但是一直连接不上去,在连接过程中,右下角的宽带连接就会转啊转,等到提示连接不上的时候,把鼠标放到右下角的图标会提示 "Internet访问 - 本地连接显示未识别". 从未识别的网络下手(如果这个正常可以跳过),点击后面的自定义,看看是不是选公用了?改成专用->下一步->关闭(如下图),好了,等一会,就会出现选择网络情况的窗口,可以选什么家庭,公司什么的,这个就看个人的需要了.(那个图标可以随时更改,方法是在正常以后

Win8打开应用商店显示未连接到Internet怎么办

  Win8打开应用商店显示未连接到Internet的解决方法如下: 将dns服务器修改为8.8.8.8(Google全球免费的dns服务器,一般不影响上网) 1.打开"网络和共享中心". 2.打开"更改设配器设置". 3.本地已连接的属性,修改ipv4的DNS首选项为8.8.8.8.(若果用无线连的,只要修改无线网卡的属性下ipv4的DNS为8.8.8.8) 4.关闭其他窗口进入metro界面,打开应用商店查看.

win7电脑提示本地连接显示未识别怎么办?

  网络连接总是系统中最容易出错,也最容易出现故障的地方之一,如果是使用网线上网还好,若是使用其他的方式,就经常会出现这样那样的不对劲,这不,今天又有一个朋友因为网络连接的问题要抓狂了.使用ADSL PPPOE进行宽带上网,连接的时候图标那里一直有一个圈在转,始终连接不上,将鼠标移动过去一查看,原来这里显示的是本地连接显示未识别.那么win7旗舰版中,遭遇本地连接未识别,网络无法连接上到底应该怎么办呢?下面,小编就这个问题来说明一下吧! 1.大家不妨看看目前正在使用的网络连接,在之前设置的时候是