'Code Refactoring' 和 'Analyzer with Code Fix' 模板有什么区别

Whats the difference between the 'Code Refactoring' and the 'Analyzer with Code Fix' template

我想我会深入研究编写自定义代码分析器,以便我可以执行规则并允许应用代码修复。 安装所需工作负载后打开 VS,我看到以下可用模板:

有什么区别?我怎么知道该选什么?

  • “代码重构”模板为您提供了一个 VSIX 扩展,其中包含用于重构的单独项目。当光标位于匹配代码上时,该扩展程序会在“快速操作”菜单中显示一个新条目。这样,您可以提供快速代码修复,而无需定义额外的分析器 ID 并向用户显示错误列表中的条目。

  • “带有代码修复的分析器”模板为您提供了一个 VSIX 扩展和一个单独的分析器项目,也可以通过 NuGet 进行部署。分析器可用于在匹配代码下方显示波浪线,显示错误列表中的条目,可将其配置为消息、警告甚至错误 - 提供代码修复是 可选.

  • “独立代码分析工具”模板为您提供了一个控制台项目,它将 open a solution workspace。这样,您就可以分析您的项目,而无需将任何 VSIX 扩展或 NuGet 包安装到项目或 IDE - 它应该从命令行调用,这在构建服务器上使用时最有意义.该模板不包含任何分析器或重构。