You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改Visual Studio 2022的C#参数空值检查模板为精简格式?

自定义Visual Studio 2022的C#空值检查模板

我在使用C#开发时,经常会对参数进行空值检查(这是优秀开发者的必备操作!)。由于不想手动编写,我希望让Visual Studio自动添加这些检查。但VS生成的空值检查代码每个要占4行,示例如下:

if (a is null)
{
    throw new ArgumentNullException(nameof(a));
}

这太繁琐了!理想情况下是给参数名添加!,但该功能已被取消,所以我退而求其次,希望生成如下精简代码:

_ = a ?? throw new ArgumentNullException(nameof(a));

请问能否让Visual Studio 2022实现这种自定义的空值检查模板?


实现方案

  • 找到代码片段文件

    • 打开文件资源管理器,导航到VS的代码片段目录:
      • 用户自定义片段路径:%USERPROFILE%\Documents\Visual Studio 2022\Code Snippets\Visual C#\My Code Snippets
      • 全局默认片段路径:C:\Program Files\Microsoft Visual Studio\2022\<Edition>\VC#\Snippets\1033\Refactoring(将<Edition>替换为你的VS版本,如Community、Professional)
  • 修改空值检查模板

    • 在Refactoring目录下找到GenerateArgumentNullException.snippet文件,复制一份到自定义片段目录(避免修改全局文件导致后续VS更新覆盖)
    • 打开复制后的文件,找到<Code>节点,将其中的原有代码替换为:
      <Code Language="csharp"><![CDATA[_ = $parameter$ ?? throw new ArgumentNullException(nameof($parameter$));]]></Code>
      
    • 保存文件后重启Visual Studio,新模板即可生效
  • 使用自定义模板

    • 右键点击方法参数,选择“快速操作和重构”→“添加空值检查”,VS就会生成你需要的精简版空值检查代码

另外,也可以借助Visual Studio扩展实现,比如CodeMaid(免费)或Resharper(付费),这些扩展支持自定义重构模板,但手动修改代码片段是最轻量化的方案。

内容的提问来源于stack exchange,提问作者Brian Kessler

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 15:12:48