我正在制作一个重构工具,它可以自动处理一些处理 StyleCop 的更琐碎的代码样式。我希望我的加载项能够做的一件事(作为开发人员可以打开/关闭的可选功能)是自动调用“组织使用 -> 删除和排序”功能。这是一个简单的宏调用。
但是,我的问题是,当我遍历并递归调用解决方案中每个 .cs 非设计器文件上的宏时,这个特定的宏会在执行前检查错误。如果存在语法错误并且我的加载项开始调用该功能,它会为每个文件抛出一个对话框。
我想做的是使用与函数用于即时检查错误相同的方法,然后如果有错误会导致对话框弹出,只需弹出一次性通知并跳过调用在每个文件上。
我知道我的加载项可以检查错误列表,但是我多次发现在“删除和排序”中触发问题的错误并不总是出现在列表中。我让列表为空,然后我尝试“删除和排序”,它告诉我存在构建问题。然后我构建了解决方案,果然它失败了,错误被填充了。我看到的唯一解决方案是使用与“删除和排序”相同的功能进行事先检查。
有人知道我如何在以与“删除和排序使用”相同的方式构建之前检测编译器错误吗?