Visual Studio 通过代码片段、重构、工具箱拖拽和任务注释四大机制提升编码效率:代码片段(如for/tab)快速生成结构;重构(Ctrl+.)自动添加空检查、删除冗余代码;工具箱拖拽复用固定代码块;任务列表(Ctrl+W,T)集中管理TODO等标记。

Visual Studio 本身不自动“减少”重复代码,但提供了多个可立即生效的机制,让你在写代码时少敲、少查、少改——关键在于用对功能,而不是堆插件。
用 Code Snippet 快速插入常用结构
输入 for + 两下 Tab 就生成完整 for 循环,prop 生成自动属性,cw 展开为 Console.WriteLine()。这些不是魔法,是预置的 XML 片段,存放在:%USERPROFILE%\Documents\Visual Studio 2022\Code Snippets\Visual C#\My Code Snippets。
- 自定义片段只需新建
.snippet文件(XML 格式),填好<Title>和<Shortcut>,再把代码放进<CDATA[...]>即可 -
<Shortcut>值就是你在编辑器里要输入的触发词,比如设成log4net,输入后按 Tab 就能插入配置初始化代码 - 导入后必须重启编辑器或在新文件中测试,旧打开的 .cs 文件不会自动识别新增片段
用重构(Refactor)一键清理冗余逻辑
光标停在方法名或参数上,按 Ctrl + . 弹出菜单,选对应操作——这是最被低估的提速方式。
Visual Studio 18.8.1 官方固定版本安装引导程序,当前条目使用微软发布历史中的 Professional Web Installer,适合旧项目兼容、环境回退、复现特定构建链和排查版本差异等场景。
-
为所有参数添加 null 检查:对 C# 8+ 可空引用类型项目尤其有用,避免手写一串if (x == null) throw... -
删除无法访问的代码:比如throw后面的语句、return后的代码块,直接删掉不留痕迹 -
删除未使用的引用:只对 SDK 风格项目有效,右键项目 → “删除未使用的引用”,会列出所有没被using或调用的 NuGet/Project 引用
用工具箱拖拽复用代码块
比写 snippet 更轻量:选中一段你常复用的代码(比如一个 HTTP POST 封装、一个日志格式化模板),直接拖进“工具箱”窗口(Ctrl + Alt + X 打开),它就变成可拖拽项。
- 拖进去的代码不绑定语言,C# 片段也能拖进 .js 文件(但语法可能错,需手动调整)
- 工具箱内容跨 VS 实例共享,关掉再重开照样可用
- 不支持参数替换(不像 snippet 的
$name$),纯文本复用,适合结构固定、变量名也固定的场景
用任务注释集中管理待办逻辑
在代码里写 // TODO: 支持异步重试 或 // HACK: 临时绕过证书验证,这些不是摆设——它们会自动出现在“任务列表”(Ctrl + W, T)里。
- 默认识别
TODO、FIXME、HACK,可在工具 > 选项 > 环境 > 任务列表中添加自定义令牌(如REVIEW) - 点击任务列表里的条目,双击直接跳转到对应行,比全局搜索快得多
- 注意:只扫描打开的文件和已编译项目中的源码,未加载的 .cs 文件或外部库代码不会被索引
真正卡住效率的往往不是功能有没有,而是片段没触发、重构没看见、工具箱拖了却忘了命名——建议把 Ctrl + . 和 Ctrl + W, T 设为肌肉记忆,其他功能用到再查,别一上来就配满所有选项。

















