ReSharper具有在使用关键字别名类型名称时查找不一致的功能。例如,它会看到这两个声明并敦促您将一个更改为与另一个相同(取决于您的偏好设置):stringmyString1="String1";StringmyString2="String2";这很方便,因为在声明变量时我总是喜欢使用CLR类型的关键字别名,因此在上面的示例中,我想更正第二行。但是,这也有问题,因为在使用CLR类型的静态成员时,我总是更喜欢使用类型名称而不是关键字。考虑以下示例:stringmyString1="String1";stringmyString2=String.Format("{0}isString1
如果我使用Resharper代码清理功能,我会找到我的代码......varpersonInfos=persons.Select(Mapper.Map).ToList();改为...varpersonInfos=Enumerable.ToList(persons.Select(Mapper.Map));但随后Resharper为Enumerable.ToList提出了“Toextensionmethodinvocation”的建议,因此代码返回到...varpersonInfos=persons.Select(Mapper.Map).ToList();我已经检查了Resharper代码
有没有办法更改由Resharper中的快速修复生成的代码?它似乎不在实时模板中。我想要生成无法识别的符号的“创建属性”快速修复publicintMyProperty{get;set;}代替:protectedintMyProperty{get{thrownewNotImplementedException();}set{thrownewNotImplementedException();}} 最佳答案 不幸的是,您无法在Resharper中定义快速修复行为。但是,对于放入属性主体的内容有多种选择。转到Resharper->Optio
在使用Resharper时,由于某些原因,当我调用扩展方法时,它会自动将其转换为静态方法调用。这就是所谓的ConvertExtensionMethodtoPlainStatic重构。foo.Bar()成为MyStaticExtensions.Bar(foo);具有讽刺意味的是,它随后将此标记为代码异味。我该如何关闭它? 最佳答案 Resharper的IntelliSense中嵌入了此功能。我经常使用Linq-to-sql扩展,所以我禁用了这个功能:Resharper-选项-IntelliSense-启用RadiobuttonVisu
我注意到“常见做法和代码改进”下的ReSharper建议:将局部变量或字段转换为常量。我还注意到,在BillWagner的《EffectiveC#:50SpecificWaystoImproveYourC#》一书中,有一个语言成语“Preferreadonlytoconst”,作者在其中解释了使用const的风险。我的问题不是关于readonly和const之间的区别以及何时使用它们,而是为什么一个来源将const视为一种常见的做法/代码改进,而另一方面,第二个来源将readonly视为一个习语? 最佳答案 私有(private)常
我的自定义MembershipProvider中有此代码:publicoverridevoidInitialize(stringname,System.Collections.Specialized.NameValueCollectionconfig){if(config==null)thrownewArgumentNullException("config");if(name==null)name="MyCustomMembershipProvider";...}Resharper标记了第二个if语句并告诉我,它的计算结果总是false。但是为什么这总是评估为false?我可以轻松地
我在visualstudio中有一个大型网站解决方案,由一个ASP.NET网站项目和许多类库项目组成。我正在寻找一种方法:完全禁用ReSharper本地化,或者;强制“英语”作为默认语言,并且是唯一的语言该解决方案是我们组织的内部应用程序,本地化的可能性为零。同时,我使用StyleCop和ReSharper进行代码风格管理,并且厌倦了到处都是“Stringcan/shouldbelocalized”警告等。我可以转StyleCop和Resharper设置中的一些警告已关闭,但是我宁愿将英语指定为唯一的语言等。我认为在每个类库项目的AssemblyInfo.cs文件中有一种方法可以指定仅
我不知道我是不是太傻了,但我找不到一种方法来使用VS和Resharper查找View(cshtml文件)的所有用法。View可以是完整的或部分的。如果有人可以帮助我,这对我正在从事的新项目很有用! 最佳答案 如果您安装了ReSharper:从解决方案资源管理器中选择查看文件使用键盘,Ctrl+Shift+Alt+F12。或者,右键单击View并选择FindUsagesAdvanced...>这给你带来了一个窗口。选中Find列中的所有复选框,并从Scope列中选择解决方案,单击Find>这将在查找结果窗口中为您带来一个用法列表。>
检查以下代码:privatevoidFoo(objectbar){Typetype=bar.GetType();if(type!=null)//Expressionisalwaystrue{}}ReSharper声称type永远不会是null。这对我来说很明显,因为bar总是有一个类型,但ReSharper是如何知道的?它怎么知道方法的结果永远不会是null?Type不是结构,所以不可能是这样。而如果这个方法是我写的,那么返回值肯定可以是null(不一定是GetType,而是别的什么)。ReSharper是否足够聪明,知道只有那个特定方法的结果永远不会是null?(就像有一个永远不会返
关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭8年前。Improvethisquestion我非常喜欢ReSharper,没有它就无法工作,但是我遇到了一些问题并学会了避免:允许ReSharper自动重命名字符串文字,在您的对象变量与DALSQL或其他字符串常量中的列名称匹配的情况下,确实会让您感到厌烦。我了解到,与其在出现第二个重命名对话框时不耐烦地按下回车键,不如真正需要查看ReSharper的建议,并经常跳过字符串文字重命名步骤。这个有点隐蔽:当您打开解决方案范围的分析时,ReSharpe