如果不用 ReSharper,那么 Visual Studio 2019 能还原 ReSharper 多少功能呢?
原文:https://blog.csdn.net/WPwalter/article/details/100158000
本文的内容分为三个部分:
- Visual Studio 能完全还原的 ReSharper 的功能
- 可能 Visual Studio 在此功能上已经追赶上了 ReSharper
- 可能 Visual Studio 在此功能上虽然依然不如 ReSharper 完善,但缺少的部分几乎不影响体验
- 可能 Visual Studio 此功能比 ReSharper 更胜一筹
- Visual Studio 能部分还原 ReSharper 的功能
- 可能在多数场景中 Visual Studio 能获得 ReSharper 的此功能效果,在少数场景下不如 ReSharper
- 可能对多数人来说 Visual Studio 能获得 ReSharper 的此功能效果,对另一部分人来说无法替代 ReSharper
- 有可能 Visual Studio 在此功能上另辟蹊径比 ReSharper 更厉害,但综合效果不如 ReSharper
- Visual Studio 此功能依然很弱,但可以通过安装免费的插件的方式补足
- Visual Studio 此功能依然比不上 ReSharper
- 可能是 Visual Studio 没有此功能
- 可能是 Visual Studio 此功能的实现方式上不如 ReSharper 快速、高效、简单
- 自动反编译工具
完美还原
无处不在的智能感知提示
默认情况下,Visual Studio 只在你刚开始打字或者输入 . 和 ( 的时候才出现智能感知提示,但是如果你使用 ReSharper 开发,你会发现智能感知提示无处不在(所以那么卡?)。
实际上你也可以配置 Visual Studio 的智能感知在更多的情况下出现,请打开下面“工具”->“选项”->“文本编辑器”->“C#”->“IntelliSense”:

打开“键入字符后显示完成列表”和“删除字符后显示完成列表”。这样,你只要正在编辑,都会显示智能感知提示。
另外,如果你当前需要打开智能感知提示,默认情况下使用 Ctrl + 空格键 可以打开。当然你也可以将其修改为 ReSharper 中常见的快捷键 Alt + 右箭头。方法是修改键盘快捷键中的 “” 项。

修改快捷键方法详见:
另外,在 IntelliCode 部分,可以选择打开更多的 IntelliSense 完成项:

在输入时即自动导入需要的命名空间
ReSharper 的智能感知提示包含所依赖的各种程序集中的类型,然而 Visual Studio 的智能感知则没有包含那些,只有顶部写了 using 的几个命名空间中的类型。
Visual Studio 2019 中可以设置智能感知提示中“显示未导入命名空间中的项”。默认是没有开启的,当开启后,你将直接能在智能感知提示中看到原本 ReSharper 中才能有的编写任何类型的体验。

默认情况下输入未知类型时只能完整输入类名然后使用重构快捷键将命名空间导入:

但开启了此选项后,只需要输入类名的一部分,哪怕此类型还没有写 using 将其导入,也能在智能感知提示中看到并且完成输入。

提取局部变量
在 ReSharper 中,选中一段代码,如果这段代码可以返回一个值,那么可以使用重构快捷键(默认 Alt+Enter)生成一个局部变量。如果同样带代码块在此方法体中有多处,那么可以同时将多处代码一并提取出来成为一个布局变量。
在 Visual Studio 中,也可以选中一段代码将其提取称一个局部变量:
重命名标识符(类名/方法名/属性名/变量名等)
ReSharper 可以使用 Ctrl + R, R 快捷键重命名一个标识符。
Visual Studio 中也是默认使用 F2 或者与 ReSharper 相同的 Ctrl + R, R 快捷键来重命名一个标识符。

可以还原
正在填坑……
依然不足
大量的代码片段
ReSharper 中自带了大量方便的代码片段,而且其代码片段的可定制性非常强,有很多可以只能完成的宏;而且还有后置式代码片段。
然而 Visual Studio 自带的代码片段就弱很多,只能支持最基本的宏。
不过可以通过下面一些插件通过数量来补足功能上的一些短板:
Snippetica for C# - Visual Studio Marketplace
C# Methods Code Snippets - Visual Studio Marketplace
自动反编译工具
1.工具->选项

2.文本编辑器->C#->高级->勾选支持导航到反编译源码

3.关闭浏览器不停止项目

如果不用 ReSharper,那么 Visual Studio 2019 能还原 ReSharper 多少功能呢?的更多相关文章
- 在Visual Studio 2019中开启预览功能
在Visual Studio 2019 菜单 [工具] > [选项] > [环境] 下的预览功能页面焕然一新!我们介绍了预览功能页面,以便您可以轻松找到这些功能并能够控制其启用.新布局提供 ...
- Visual Studio 2019 preview中体验C# 8.0新语法
准备工作: Visual Studio 2019 Preview版本中并没有包含所有的C# 8.0的新功能,但目前也有一些可以试用了.在开始之前,需要进行入两项设置: 将Framework设置为.ne ...
- Visual Studio 2019 正式发布,重磅更新,支持live share
如约而至,微软已于今天推出 Visual Studio 2019 正式版,一同发布的还有 Visual Studio 2019 for Mac. Visual Studio 2019 下载地址:htt ...
- Visual Studio 2019 正式发布
原文链接: https://www.oschina.net/news/105629/vs2019-general-availability 如约而至,微软已于今天推出 Visual Studio 20 ...
- Visual Studio 2019 v16.10 和 v16.11 Preview 1 现已推出!
Visual Studio 2019 v16.10有什么新功能? 我们很高兴地宣布Visual Studio 2019 v16.10 GA 和 v16.11 preview 1发布.此版本使我们的主题 ...
- Visual Studio 2019 16.0 正式版下载
Visual Studio 2019 16.0 最新版 现在流行 官方版直接下载 在线选择性安装https://www.visualstudio.com/zh-hans/downloads/ Vis ...
- 带你使用Visual Studio 2019创建一个MVC Web应用
工欲善其事必先利其器,我们既然有Visual Studio2019这样的IDE为什么不用?学.Net Core而不用Visual Studio进行开发可谓是多么另类呀!既然你已经安装了VS2019的话 ...
- Visual Studio 2019本地不能运行Azure Functions
最近一个项目,需要维护同事写得代码,主要是一堆基于 .net core 3.1 的 Azure Functions.想起2年前第一次接触 Azure Functions(那次是基于.net frame ...
- 提升ReSharper和Visual Studio的性能
转载 作者:赵青青 出处:http://www.cnblogs.com/zhaoqingqing/ 文章目录[点击展开](?)[+] 提升性能 我们不断地确保ReSharper的正常 ...
随机推荐
- BladeX 2.0.7.RELEASE版本git后,在idea中导入项目,结果无法运行FlowApplication等几个服务的错误
问题:2.0.7.RELEASE版本git后,在Intellij IDEA运行项目,结果无法运行FlowApplication等几个服务的错误 描述:打开IDEA,点击Check out from V ...
- eclipse :代码自动补全不生效解决办法
参考文章:https://blog.csdn.net/qq_35033270/article/details/79285821 请见下图! 恢复缺省值即可!
- 切换普通用户报 -bash: fork: retry: No child processes
ssh 连接普通用户 报这个错误 -bash: fork: retry: No child processes 解决办法: 更改vi /etc/security/limits.d/20-nproc.c ...
- Java分布式定时任务
分布式定时任务 elastic-job 可以实现任务分片 quartz 可以把任务存入数据库,实时生成任务(添加数据库添加定时任务) 文档 中文翻译 翻译2
- SpringMVC中静态资源的处理
web项目中web.xml配置 在一个使用springmvc的web项目中,必然在web.xml中要配置前端控制器DispatcherServlet <servlet> <servl ...
- 系统中提示未找到/usr/bin/ld: cannot find -lxxx错误的通用解决方法
在linux环境编译应用程式或lib的source code时常常会出现如下的错误讯息: 代码如下: /usr/bin/ld: cannot find -lxxx 这些讯息会随着编译不同类型的sour ...
- 创建 django 项目命令
创建Django项目 django-admin startproject HelloWorld Django创建app cd HelloWorld python manage.py startapp ...
- KAFA架构及其基本概念
1.目标 - KAFA价格 在我们上一篇Kafka教程中,我们讨论了Kafka用例和应用程序.今天,在这个Kafka教程中,我们将讨论Kafka Architecture.在这篇Kafka Archi ...
- Java开发笔记(一百一十四)利用Socket传输文本消息
前面介绍了HTTP协议的网络通信,包括接口调用.文件下载和文件上传,这些功能固然已经覆盖了常见的联网操作,可是HTTP协议拥有专门的通信规则,这些规则一方面有利于维持正常的数据交互,另一方面不可避免地 ...
- 状态机的Verilog写法
“硬件设计很讲究并行设计思想,虽然用Verilog描述的电路大都是并行实现的,但是对于实际的工程应用,往往需要让硬件来实现一些具有一定顺序的工作,这就要用到状态机思想.什么是状态机呢?简单的说,就是通 ...