如何在VS22中编辑默认代码生成



我想修改Visual Studio 22中某些代码的生成方式。

例如,在方法中,我可以通过以下方式使用参数的Add null check(MS-docs链接(生成null检查。

public void MyMethod(object parameter)
{
if (object is null)
{
throw new ArgumentNullException(nameof(parameter));
}
// rest of the method
// ...
}

我想生成的是:

public void MyMethod(object parameter)
{
if (object is null) throw new ArgumentNullException(nameof(parameter));

// rest of the method
// ...
}

我查看了代码段设置和重构设置,但在任何地方都找不到Add null check选项。更不用说改变了。

我想到的最好的选择是创建一个代码片段(MS-docs链接(,但这并不能完全达到我的目的。

有没有可以修改的选项来说明代码是如何生成的?

根据注释改写canton7的答案:

添加null检查不是由任何代码段生成的。相反,它是基于标准分析器基础设施(此处定义,此处可见(。这意味着它只是一个语义生成的if语句,其中包含throw。然后根据.editorconfig(如果未指定,则为默认值(相应地格式化代码。

其中一个选项如下:

  • 编辑.editorconfig文件以使代码格式符合要求。请注意,这种方法适用于全球
  • 等待C#11!!语法
  • 编写自己的分析器和代码修复程序(教程(
  • 手动编辑:(

最新更新