【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-10-29 19:11:07

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

[Q]复制授权了文件但仍显示“未注册”问题

1. 注意要将解压后的文件复制到CAD批量打图精灵安装目录,而不要复制文件夹,复制是提示是否需要覆盖,要选择覆盖. 2. 若通过第1步操作仍然显示“未注册”,则可能是由于安装目录含有中文或者不是默认目录引起的,重装打图精灵试用版,并安装到默认目录,然后使用授权文件注册.

硬盘分区Convert转换为NTFS后使用正常,但DiskGenius显示未格式化的解决方法

有几个旧分区还是Fat32的,因为文件太多一直没清理,近日要用到大文件比较多,所以干脆把所有分区都用Convert转换为NTFS,转换后使用一切正常,但是用DiskGenius后发现同一硬盘不同分区却有不同结果,在DiskGenius有些正常有些显示"未格式化",但"未格式化"的几个分区无论是系统里还是其它硬盘工具里都显示正常,DiskGenius不时要用,体验良好,但是如果分区显示未格式化的话就没办法做任何操作,于是开始了惊险的修复之路... 开始以为是分区表错误

win7无声音显示“未插入扬声器或耳机” 怎么解决

不知道是否有用户朋友跟本人遇到这么一个情况,电脑不论是不是有插上耳机或者扬声器,在机箱前面和后面的耳机插孔处都试了好几遍,win8纯净版系统依旧没有声音. 这时候我们来看一下桌面右下角音量图标显示一个"X"符号,将鼠标移到音量图标处,发现系统上显示"未插入扬声器或耳机". 起初打开了音量图标设置了一下,还是没有声音,最后想到可能是驱动问题,甚至重装了一下音频驱动,结果还是不行!这到底是什么问题呢?雨林木风系统显示"未插入扬声器或耳机"解决方法是什

【Python学习笔记】-APP图标显示未读消息数目

以小米手机系统为例,当安装的某个APP有未读消息时,就会在该APP图标的右上角显示未读消息的数目.本文主要解说怎样用Python语言实现图标显示未读消息的数目.首先,还是要用到Python中PIL库,关于Linux下怎样安装PIL库,请大家參考这篇博客:http://blog.csdn.net/kevin_zhai/article/details/47720721,里面有具体的安装过程.实现的原理非常easy,直接用Image读取原始图标.然后将未读消息的数目插入到图标的右上角就可以. 脚本代码

SHOPKEE 微信支付,订单状态显示未支付 修复

公众号支付 --> H5调起支付API 1 function onBridgeReady(){ 2 WeixinJSBridge.invoke( 3 'getBrandWCPayRequest', { 4 "appId" : "wx2421b1c4370ec43b", //公众号名称,由商户传入 5 "timeStamp":" 1395712654", //时间戳,自1970年以来的秒数 6 "nonceStr

Google Analytics 跟踪代码安装后状态总是显示'未安装跟踪代码'

最近要使用Google Analytics,但是在跟踪代码安装后状态总是显示'未安装跟踪代码'!如下所示:   在Google Analytics的帮助中“排查常见的跟踪设置错误”文章中找到了解决方法,拷贝适合多余空格导致. 附: 排查常见的跟踪设置错误 正确安装跟踪代码段后,最长需要 24 小时才能在帐户中看到数据.如果安装 24 小时后仍未看到任何数据,请查看下列可能的原因: 使用的代码段不正确和/或您查看了错误的帐户或视图如果您在跟踪多个网站和/或可以访问多个 Google Analyti

C# Json反序列化 数据协定类型 无法反序列化 由于未找到必需的数据成员

背景今天在使用:C# Json 序列化与反序列化 反序列化的时候出现了以下的错误信息. System.Runtime.Serialization.SerializationException: 数据协定类型"TestEntity"无法反序列化,由于未找到必需的数据成员"multipleChoice, runTimeDisplayColumns". 在 System.ComponentModel.ReflectPropertyDescriptor.SetValue(O

切换某个窗口为当前窗口并显示在最前面---非置顶

SwitchToThisWindow 函数 切换焦点到指定窗口并显示在前台 //Syntax VOID SwitchToThisWindow( HWND hWnd, BOOL fAltTab ); 切换某个窗口为当前窗口并显示在最前面---非置顶

[WPF疑难] 模式窗口被隐藏后重新显示时变成了非模式窗口

原文:[WPF疑难] 模式窗口被隐藏后重新显示时变成了非模式窗口 [WPF疑难] 模式窗口被隐藏后重新显示时变成了非模式窗口 周银辉 现象: 大家可以试试下面这个很有趣但会带来Defect的现象:当我们将子窗口按照ShowDialog()的方式显示出来的时候,很明显该窗口是模式化的(即主窗口等待该窗口的返回,主窗口将不相应用户输入),但如果此时将子窗口的Visibility设置成Visibility.Hidden来隐藏窗口,然后再将Visibility设置成Visibility.Visible来