resharper

强大的VS插件—Resharper

限于喜欢 提交于 2020-03-11 12:56:35
ReSharper是一款Visual.net的插件,主要提升VS.net代码编辑能力,包括对C#、VB.net、XML、XAML和ASP.net,并包括这些语言的交叉关联引用。ReSharper让Visual Studio开发人员更加便捷,包括代码分析、单元测试方案、Goto Symbol支持、To-do探测器等各种特性,ReSharper可以说是辅助Visual Studio开发的一把瑞士军刀,将IntelliJ IDEA在代码编辑方面的智能特性全面带入到Visual Studio中,积极提升.net开发人员的工作效率。ReSharper提供三个版本:Full, C#和VB.net,这样开发人员可以更精准地选择所需的特性。 很早就听同事说过这个插件很好用,但是听说安装后会拖慢vs的速度,所以就迟迟没敢装,最近还是经不住诱惑装上了这个插件,果然没让我失望。 下载地址: http://www.jetbrains.com/resharper/download/ 需要注意的是Resharper是收费的,不过网上可以很容易找到注册码,这里就不提供链接了 博客园的 飞刀 针对1.0版自己写过注册机,有兴趣的朋友可以研究下。 http://www.cnblogs.com/feidao/archive/2004/08/12/32537.aspx 来源: https://www.cnblogs

如何在Visual Studio中禁用ReSharper并再次启用它?

梦想与她 提交于 2020-03-08 20:22:19
我安装了 ReSharper ,它可以在Visual Studio中运行,但如何禁用它? 每当我在ReSharper菜单中搜索时,我都找不到禁用选项。 #1楼 工具 - >选项 - > ReSharper(如果ReSharper选项不可用,则勾选“显示全部设置”)。 然后你可以做暂停或恢复。 希望它有所帮助(我只在VS2005中测试过) #2楼 如果您不想使用命令窗口或快捷键,可以添加菜单项以切换ReSharper。 遗憾的是, ReSharper_ToggleSuspended 命令无法直接添加到菜单中(这是一个 未解决的问题 ),但它很容易解决: 像这样创建一个宏: Sub ToggleResharper() DTE.ExecuteCommand("ReSharper_ToggleSuspended") End Sub 然后添加一个菜单项来运行该宏: 工具| 定制... 选择“命令”选项卡 选择要放置项目的菜单 单击添加命令... 在左侧列表中,选择“宏” 在右侧的结果列表中,选择宏 单击确定 在列表中突出显示新命令,然后单击“修改选择...”以设置菜单项文本等。 #3楼 在ReSharper 8中:工具 - >选项 - > ReSharper - >暂停 #4楼 您需要转到工具 - >选项--->选择Resharper --->单击立即暂停,以禁用它 #5楼 您可以使用菜单

为什么我们必须在C#中同时定义==和!=?

拜拜、爱过 提交于 2020-03-04 13:48:01
C#编译器要求,每当自定义类型定义运算符 == ,它还必须定义 != (请参见 此处 )。 为什么? 我很好奇,为什么设计师会认为这是必要的,以及为什么当仅存在另一个运算符时,编译器为何不能默认其中一个运算符为合理的实现。 例如,Lua允许您仅定义相等运算符,而另一个则免费。 C#可以通过要求您定义==或同时定义==和!=来完成相同的工作,然后将缺少的!=运算符自动编译为 !(left == right) 。 我知道有些情况下有些实体可能不相等或不相等(例如IEEE-754 NaN),但是在某些特殊情况下,这似乎是个例外,而不是规则。 因此,这不能解释为什么C#编译器设计人员将例外作为规则。 我已经看到了定义平等运算符的工艺不佳的情况,然后不平等运算符是一个复制粘贴,每个比较都相反,每个&&切换为||。 (您明白了……基本上!(a == b)通过De Morgan的规则扩展了)。 与Lua的情况一样,编译器可以通过设计消除这种糟糕的做法。 注意:运算符<> <=> =也是如此。 我无法想象需要用不自然的方式定义它们的情况。 Lua允许您仅定义<和<=,并通过前者的否定自然定义> =和>。 C#为什么不做同样的事情(至少是“默认”)? 编辑 显然,有充分的理由允许程序员执行他们喜欢的相等性和不平等性检查。 一些答案指出了可能不错的情况。 但是,我的问题的核心是,为什么在C#中 通常

VS代码生成工具ReSharper的快捷键的配置

拜拜、爱过 提交于 2020-03-01 13:05:16
VS代码生成工具 ReSharper 提供了丰富的快捷键,可以极大地提高你的开发效率。安装ReSharper后首次启动Visual Studio时,会出现一个名为ReSharper Keyboard Scheme的对话框,如下图所示: 选择对话框提供的三个选项之一后的任何时候,您可以配置单独的键盘快捷键。 配置单个键盘快捷键 1、在主菜单上,选择Tools | Options 2、在导航视图中选择Environment | Keyboard 3、在命令列表中,选择启动ReSharper的命令名称。浏览列表以查看或者编辑ReSharper的特定操作的键盘快捷方式。 在键盘快捷方式间切换或者恢复到当前选定方案的默认状态 1、在主菜单上,选择ReSharper | Options 2、选择Environment | Keyboard and Menus 3、在Keyboard and Menus选项卡上,选择 Visual Studio, ReSharper 2.x 或 IntelliJ IDEA或 None,点击Apply Scheme。如果你选择None,你可以在Visual Studio的本地选项菜单中定义任意一组自定义快捷键(Tools | Options | Environment | Keyboard) 。 完整的快捷键列表 代码分析(Code analysis)

How to ignore unassigned new in ReSharper?

生来就可爱ヽ(ⅴ<●) 提交于 2020-03-01 05:32:43
问题 (Using ReSharper Ultimate 2017.1.3.) In my code I have something like this: new someClass(null); It is not assigned to any variable and it should stay like this. (It may look weird but it is used in a specific test case.) ReSharper warning says: Possible unassigned object create by 'new' expression The menu doesn't suggest to auto-write the comment so I'm looking for the syntax. What is the ReSharper comment to ignore this? After some search I already tried: // ReSharper disable once //

How to ignore unassigned new in ReSharper?

孤街浪徒 提交于 2020-03-01 05:32:09
问题 (Using ReSharper Ultimate 2017.1.3.) In my code I have something like this: new someClass(null); It is not assigned to any variable and it should stay like this. (It may look weird but it is used in a specific test case.) ReSharper warning says: Possible unassigned object create by 'new' expression The menu doesn't suggest to auto-write the comment so I'm looking for the syntax. What is the ReSharper comment to ignore this? After some search I already tried: // ReSharper disable once //

How to ignore unassigned new in ReSharper?

夙愿已清 提交于 2020-03-01 05:32:07
问题 (Using ReSharper Ultimate 2017.1.3.) In my code I have something like this: new someClass(null); It is not assigned to any variable and it should stay like this. (It may look weird but it is used in a specific test case.) ReSharper warning says: Possible unassigned object create by 'new' expression The menu doesn't suggest to auto-write the comment so I'm looking for the syntax. What is the ReSharper comment to ignore this? After some search I already tried: // ReSharper disable once //

在ASP.NET MVC中编译视图

拜拜、爱过 提交于 2020-02-28 07:56:16
我想要一个msbuild任务来编译视图,这样我就可以看到编译时是否存在编译错误...编译时。 有任何想法吗? #1楼 我坦率地推荐 RazorGenerator nuget包。 这样你的视图 .designer.cs 在你保存它们时生成一个 .designer.cs 文件,除了为你的视图获取编译时错误之外,它们还被预编译到程序集中(=更快的预热),Resharper也提供了一些额外的帮助。 要使用它, 请 在ASP.NET MVC项目中包含 RazorGenerator nuget包,并在 Tools→Extensions and Updates 下的项目下安装“ Razor Generator ”扩展。 我们使用这个,并且使用这种方法的每次编译的开销要少得多。 除此之外,我可能会推荐 RedGate的.NET Demon, 它可以进一步减少编译时的影响。 希望这可以帮助。 #2楼 使用Visual Studio的 生产力电动工具 ( 免费 )扩展 有所帮助 。 具体来说, Solution Error Visualizer 功能。 有了它,解决方案资源管理器(在发现错误的源文件中)可视地标记了编译错误。 但是,出于某种原因,此功能不能与代码中其他任何位置的其他错误一起使用。 使用MVC视图时,任何编译时错误仍会在各自的.cs文件中以红色加下划线

最小化/解压缩JavaScript的工具[关闭]

最后都变了- 提交于 2020-02-28 05:07:12
关闭。 这个问题是 题外话 。 它当前不接受答案。 想改善这个问题吗? 更新问题 ,使其成为Stack Overflow 的主题 。 5年前 关闭。 是否有任何命令行脚本和/或在线工具可以逆转缩小效果,类似于Tidy如何清除可怕的HTML? (我特别希望缩小压缩的JavaScript文件的大小,因此变量重命名可能仍然是一个问题。) #1楼 得到它了! JSBeautifier 正是这样做的,您甚至可以选择自动格式设置。 #2楼 与 Stone 的答案类似,但对于Windows / .NET开发人员: 如果您拥有Visual Studio和ReSharper-一种格式化Javascript的简单替代方法是: 使用Visual Studio打开文件; 单击“ ReSharper”>“工具”>“清理代码”(Ctrl + E,C); 选择“默认:重新设置代码格式”,然后单击“确定”。 开裂啤酒。 #3楼 漂亮的DIFF 会美化(代码)的JavaScript的方式,符合 JSLint的 和 JSHint 空白算法。 #4楼 http://unminify.appspot.com/ 统一javascript和json的绝佳工具 #5楼 作为一种替代方法(因为到目前为止我还不了解jsbeautifier.org),我使用了一个书签小书签,该书签小书签重新启用了Dean Edward's

方法可以做成静态,但应该吗?

不问归期 提交于 2020-02-27 21:17:50
Resharper喜欢指出每个asp.net页面可以静态化的多个函数。 如果我让它们静止,对我有帮助吗? 我应该将它们设置为静态并将它们移动到实用程序类吗? #1楼 这很有趣: http://thecuttingledge.com/?p=57 ReSharper实际上并不建议你让你的方法保持静态。 你应该问问自己为什么那个方法在那个类中,而不是比如在其签名中出现的一个类... 但是这里是resharper documentaion所说的: http : //confluence.jetbrains.net/display/ReSharper/Member+can+be+made+static #2楼 只是为了添加 @Jason True的 答案 ,重要的是要认识到只在方法上加上'static'并不能保证该方法是'纯'的。 对于声明它的类,它将是无状态的,但它可能会访问具有状态(应用程序配置等)的其他“静态”对象,这可能并不总是坏事,但其中一个原因是我个人倾向于喜欢静态方法,如果它们是纯粹的,你可以单独测试和推理它们,而不必担心周围的状态。 #3楼 对于类中的复杂逻辑,我发现私有静态方法在创建隔离逻辑时非常有用,其中实例输入在方法签名中明确定义,并且不会发生实例副作用。 所有输出必须通过返回值或out / ref参数。 将复杂的逻辑分解为 无副作用的代码块