Visual Studio的奇淫技巧,你知道多少?

如果你像我一样,或许你也沉迷于开发者工具。这就是我喜欢 Visual Studio 的原因之一——它有无数的生产力技巧。

这篇文章将展示五个这样的技巧,这些技巧对我每天的工作都有帮助。请注意,这些仅适用于 Visual Studio。有像ReSharper[1]、Roslynator[2]和OzCode[3]这样的扩展可以增加大量的生产力价值,但这是另一篇博文。

1. 代码片段

Visual Studio 允许您快速创建常见的代码片段。这可能是一个for循环、一个try..catch子句或一个using语句。要使用它,只需输入代码片段的快捷方式。for例如,对于语句,开始输入for

22ad2f696c04ddf56fea6e65b8523b0d.png

IntelliSense 显示有三个适合的片段for(前三个项目)。要使用其中之一,只需点击Tab两次,VS 就会生成样板代码。

5f7e5a8310a31507be6b72e2dfd72643.png

现在您可以编辑突出显示的部分。点击Tab以在它们之间切换,EnterEsc在完成时切换。

有几十个开箱即用的片段。他们之中有一些是:

tryforeachif/elsedodo..while环•propdp 对于依赖属性

甚至还有代码块的片段。例如,您可以用一个try..catch片段包围一个块。

43781741c35e3b1ca99da064b4ab9afb.png

2. 来自未导入命名空间的 IntelliSense 项

您是否曾经觉得 ReSharper 的 IntelliSense 比 Visual Studio 的更好?那是因为 ReSharper 已经做了很多 VS 没有的聪明的事情。不过,Visual Studio 正在迎头赶上。最近添加的是从未导入的命名空间选项添加项目。它是角落里的“+”按钮。

a0f035193a5b72d82782c4c79e3dee4e.png

当您开始编写某些内容时,Visual Studio 会显示仅来自using当前文件中添加(带有)的命名空间的自动完成选项。你可以想象这是非常有限的。您真正想要的是查看所有可用选项并让 IDE 导入正确的命名空间。这正是这个按钮的作用。当点击或使用Alt + A快捷方式时,您将看到来自项目所有可用命名空间甚至其引用的项目:

142cfda2b685a787cce6079d8ecb2641.png

3. 快速操作和重构

Visual Studio 包括许多自动重构和代码生成功能。嗯,没有ReSharper[4]那么多,但您会感到惊讶。其中大部分都可以从Quick Actions and Refactorings菜单访问,该菜单可通过Ctrl + .快捷方式访问。只需将插入符号放在类上,然后点击快捷方式。你会看到一堆有用的选项:

8fc5d24e82be0add66dc849b03462474.png

例如,如果您选择一个代码块,您通常能够将其提取到一个方法或一个本地函数中。

0aa65c42ff60705c31c24d281ee69384.png

这些有很多。要发现它们,每当您站在某物上方时,请查找“快速操作”按钮:

b97da53b6002970cb71b6567f56965d2.png

如果您使用的是 ReSharper,您可能会看到一个灯泡【译者注:更像一个起子(改锥)】按钮,显示 ReSharper 的重构。点击该灯泡将在同一上下文菜单中显示来自 ReSharper 和 Visual Studio 的操作。

4. 在解决方案资源管理器中跟踪活动项目或不跟踪

转到解决方案资源管理器中的当前活动文件非常有用。您可能想要重命名、移动它、查看文件的属性或导航到附近的文件。不管它是什么,您最不想做的就是在解决方案的项目树中手动搜索它。

多年来,我一直在使用Track Active Item选项。启用后,解决方案资源管理器会自动将所选文件更改为您当前正在编辑的任何文件。

528d5501c991d8c6cb5e41db1b147bcf.png

这感觉很有成效,但缺点是在处理一堆文件后,解决方案资源管理器树变得一团糟。一切都被扩展了,不可能找到任何东西。还有一个小的性能影响。所以现在我改变了策略。我发现有一个快捷方式可以根据需要导航到该项目,而不是自动跟踪活动项目。

ad1ff032fa617bfefd29fb4879a5254e.png

默认快捷方式是Ctrl + [, S. 我尽量保持默认值。不是最容易记住的,但你会习惯任何事情。

这意味着我的解决方案资源管理器现在保持不变。展开的项目保持展开状态,如果我不进行滚动,则不会滚动任何内容。

5. Ctrl + T 技巧

有很多方法可以在您的解决方案中导航。我最喜欢的方式是Ctrl + T选项(Edit | Go To | Go To All)。你可以搜索任何你想要的东西,Visual Studio 会找到它。这可能是一个文件、一个类、一个属性、一个字段或一个方法。

1a5dfa565eb07896b82f1d15fc3fecfe.png

这个窗口有一些技巧:

1.常规搜索使用简单的“包含”逻辑。如果文件/类/成员包含搜索输入,您将在搜索结果中看到它。2.对于使用驼峰式(或 PascalCase)拼写的项目,您可以只输入首字母。例如,asdc会发现AnotherSearchDemoComponent

cccdc548c896ea45f275b2ff2b631e0b.png

1.如果您想进一步缩小搜索范围,可以将姓名首字母与部分姓名组合在一起。

25128134b5d7f1a38070a397f7d20293.png

1.您可以将搜索范围缩小到特定项目类型:•f [search] 只查找文件•r [search] 在最近的文件中查找•t [search] 看类型•m [search] 看起来在成员•# [search] 看符号

诚然,Visual Studio 还可以从 ReSharper 学到更多东西,它还增加了模糊搜索功能。

概括

Visual Studio 是一个强大的工具。你可以每天使用它,哪怕连续十年也可能仍然不知道它的每一个功能。我自己每天都会发现新事物,并且我已经写了一本[5]关于它的书[6]。我还在继续挖掘它的新功能,我相信你也可以。

References

[1] ReSharper: https://www.jetbrains.com/resharper/
[2] Roslynator: https://github.com/JosefPihrt/Roslynator
[3] OzCode: https://oz-code.com/
[4] ReSharper: https://www.jetbrains.com/resharper/
[5] 本: https://practicaldebugging.net/
[6] 书: https://practicaldebugging.net/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/297765.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

promise的状态以及api介绍_前端 api 请求缓存

作者:wsafighthttps://github.com/wsafight/personBlog/issues/2web开发时,性能都是必不可少的话题。对于webpack打包的单页面应用程序而言,我们可以采用很多方式来对性能进行优化,比方说 tree-shaking、模块懒加载、利用 extrens…

哎,累死了~..~

下午睡觉一起床,打开博客园时,才发现后台原来可以用CSS来弄主页啊,我个猪头,才发现。。。弄了一下午,终于搞了个像样的,嘿嘿,浪漫典雅,不失严谨,有点类似Metro风格&#…

RedHat el5.0 搭建 Postfix 邮件服务器系统一

RedHat el5.0 搭建 Postfix 邮件服务器系统 (postfixcyrus-sasl2courier-authlibcourier-imapextmailmaildrop) 一、系统环境 操作系统:rhel-5.2 所需软件(按网上以前的文档,好多版本都找不到&#xff…

C# 数据结构--排序[下]

希尔排序&#xff08;Shell Sort&#xff09; 排序思想&#xff1a; 先取一个小于n的整数d1作为第一个增量&#xff0c;把文件的全部记录分组。所有距离为d1的倍数的记录放在同一个组中。先在各组内进行直接插入排序&#xff1b;然后&#xff0c;取第二个增量d2<d1重复上述的…

奥林匹克数学竞赛教练员汇编,最牛奥数资料全集!

全世界只有3.14 % 的人关注了爆炸吧知识1985年&#xff0c;由北京大学、南开大学、复旦大学和中国科技大学四所大学倡议&#xff0c;中国数学会决定&#xff0c;自1986年起每年一月份&#xff08;第29届起改为每年12月举行&#xff09;举行全国中学生数学冬令营&#xff0c;后又…

成长 | 《大厂晋升指南》学习总结(中)

【学习总结】| Edison Zhou上一篇总结了晋升体系和职级详解&#xff0c;本篇总结面评技巧和学习方法。温馨提示&#xff1a;文中的贴图均来自极客时间《大厂晋升指南》课程。1面评技巧PPT框架华仔在多年的晋升答辩评委经历中总结了晋升答辩PPT的3个常见误区&#xff1a;&#x…

window.location.reload()会掉参数吗_iPhone手机电量不够用,你真的会用苹果吗?设置好这几个就OK了!...

用过iPhone的小伙伴都知道iPhone手机里的IOS系统&#xff0c;正是因为IOS系统独特的流畅度吸引了很多的用户成为了果粉。但是如今在中国市场上&#xff0c;iPhone手机在市场上占据的份额一年比一年低&#xff0c;近几年新兴崛起的国产手机华为、VIVO、小米以及年青人品牌的魅族…

Linux 下 MySQL 启动与关闭 说明

一.启动1.1 MySQL 进程可以用ps 命令查看进程&#xff1a;[rootrac2 ~]# ps -ef|grep mysqlroot 2161 1 0 09:38 ? 00:00:00 /bin/sh /usr/bin/mysqld_safe--datadir/var/lib/mysql --pid-file/var/lib/mysql/rac2.pidmysql 2418 2161 0 09:38 ? …

历史上有哪些看似经PS处理实则没有的照片?

全世界只有3.14 % 的人关注了爆炸吧知识使用过xp系统的朋友&#xff0c;对这张图&#xff0c;肯定很是熟悉&#xff0c;毕竟是作为xp系统的经典桌面&#xff0c;名为Bliss。这张图是1996年在美国加利福尼亚州锁诺玛县&#xff0c;锁诺玛山谷南部靠近一家乳品公司旧址拍摄。摄影…

iNeuLink硬件网关与iNeuOS工业互联网操作系统互联互通应用案例

目 录1. 应用概述... 22. 模拟硬件设备配置... 23. iNeuLink硬件网关配置... 43.1 硬件介绍... 43.2 硬件网关配置... 44. iNeuOS工业互联网操作系统配置... 61. 应用概述有一个生产镍的矿业集团&#xff0c;要整合不同厂区的…

dubbo优势_Dubbo 迈出云原生重要一步 应用级服务发现解析

作者 | 刘军(陆龟) Apache Dubbo PMC概述社区版本 Dubbo 从 2.7.5 版本开始&#xff0c;新引入了一种基于实例(应用)粒度的服务发现机制&#xff0c;这是我们为 Dubbo 适配云原生基础设施的一步重要探索。版本发布到现在已有近半年时间&#xff0c;经过这段时间的探索与总结&a…

看了《隐秘的角落》才知道,掉头发有多可怕!10个掉头发最快的专业!快看看你中枪了没有!...

全世界只有3.14 % 的人关注了爆炸吧知识专业选得好秃头秃得早我爱学习&#xff0c;学习使我快乐我爱学习&#xff0c;学习使我进步我爱学习&#xff0c;学习使我美丽学习&#xff1a;我TM还能使你脱发呢我&#xff1a;港真现在上个大学不掉点头发都枉为一个真正的大学生上课与睡…

WPF企业内训全程实录(中)

摘要 WPF企业内训全程实录由于文章比较长&#xff0c;所以一共拆分成了三篇&#xff0c;上篇WPF企业内训全程实录&#xff08;上&#xff09;主 要讲了基础&#xff0c;这篇作为该实录的中篇&#xff0c;起着承上启下的作用,主要讲解开发模式、团队协作及应用框架。其实如果大家…

.Net Core with 微服务 - 可靠消息最终一致性分布式事务

前面我们讲了分布式事务的2PC、3PCTCC 的原理。这些事务其实都在尽力的模拟数据库的事务&#xff0c;我们可以简单的认为他们是一个同步行的事务。特别是 2PC,3PC 他们完全利用数据库的事务能力&#xff0c;在一阶段开始事务后不进提交会严重影响应用程序的并发性能。TCC 一阶段…

[ JS 进阶 ] Repaint 、Reflow 的基本认识和优化 (2)

你是不是经常听师兄或一些前端前辈说不能用CSS通配符 *&#xff0c;CSS选择器层叠不能超过三层&#xff0c;CSS尽量使用类选择器&#xff0c;书写HTML少使用table&#xff0c;结构要尽量简单-DOM树要小....等这些忠告&#xff0c;以前我就大概知道使用通配符或者CSS选择器层次过…

vgh电压高了有什么_智能变频电源的功能是什么?

所谓的智能变频电源&#xff0c;其主要功能是将我国的城市电源(220V直流)转换为世界上其他国家的设备(110V&#xff0c;60Hz)&#xff0c;可以说&#xff0c;它的功能是一台很好的稳压器和调频设备。智能变频电源的功能是什么&#xff1f;著名的美国北宇实验室研究报告指出&…

PDC Party 即将在东莞登场

各位社区精英们&#xff0c; 我们即将在东莞举办PDC Party的活动&#xff0c;本次活动除了精彩的PDC Keynote Demo视频分享与微软技术趋势的讨论之外&#xff0c;还希望能够借此机会&#xff0c;与各位微软技术社区精英们面对面的交流&#xff0c;共同讨论后续的发展&#xff0…

你们数学老师当年是怎么叫这些符号的…

全世界只有3.14 % 的人关注了爆炸吧知识你们数学老师都是怎么叫这些符号的呢&#xff1f;

自主生态再进一步,龙芯中科完成.NET3.1-LoongArch64平台研发

近日&#xff0c;龙芯中科.NET团队完成了.NET3.1-LoongArch64平台研发工作&#xff0c;研发的成功标志着围绕龙芯自主指令系统LoongArch的生态建设成果再进一步。龙芯自主指令系统LoongArch基于龙芯二十年的CPU研制和生态建设积累&#xff0c;LoongArch从顶层架构&#xff0c;到…

keras 自定义层input_从4个方面介绍Keras和Pytorch,并给你选择其中一个学习库的理由...

全文共3376字&#xff0c;预计学习时长7分钟对许多科学家、工程师和开发人员而言&#xff0c;TensorFlow是他们的第一个深度学习框架。TensorFlow 1.0于2017年2月发布&#xff1b;但客观来说&#xff0c;它对用户不是非常友好。过去几年里&#xff0c;由于Keras和PyTorch比Tens…