【问题标题】:Whats the difference between the 'Code Refactoring' and the 'Analyzer with Code Fix' template“代码重构”和“带有代码修复的分析器”模板有什么区别
【发布时间】:2020-12-12 16:30:30
【问题描述】:
我想我会深入研究编写自定义代码分析器,这样我就可以强制执行规则并允许应用代码修复。
在安装所需的工作负载后打开 VS 时,我看到以下可用模板:
有什么区别?我怎么知道该选什么?
【问题讨论】:
标签:
c#
visual-studio
roslyn
roslyn-code-analysis
【解决方案1】:
-
“代码重构”模板为您提供了一个 VSIX 扩展,其中包含一个用于重构的单独项目。当光标位于匹配代码上时,扩展程序会在“快速操作”菜单中显示一个新条目。这样,您可以提供快速代码修复,而无需定义额外的分析器 ID 并向用户显示错误列表中的条目。
-
“带有代码修复的分析器”模板为您提供了一个 VSIX 扩展和一个用于分析器的单独项目,该项目也可以通过 NuGet 进行部署。分析器可用于在匹配代码下方显示波浪线,显示错误列表中的条目,可将其配置为消息、警告甚至错误 - 提供代码修复是可选 .
-
“独立代码分析工具”模板为您提供了一个控制台项目,它将open a solution workspace。这样,您可以分析您的项目,而无需将任何 VSIX 扩展或 NuGet 包安装到项目或 IDE - 它应该从命令行调用,这在构建服务器上使用时最有意义。该模板不包含任何分析器或重构。