我们有一些指南,规定了如何使用命名空间,并对其进行访问限制。由于开发人员有时会做错,我们需要分析这些规则。目前我们正在使用nDepend进行此操作,效果不错。但是,必须监督此过程,找到违反这些规则的人并强制他修复问题,这需要很长时间。因此,在开发过程中或者至少在构建当前更改之后,能够获得即时通知将是非常好的。这应该是roslyn分析器的工作。
我已经花了3个小时研究roslyn,但是我对其功能列表和工作方式感到有些不知所措。也许您可以给我一个提示,告诉我如何实现我想要的功能。
我们正在谈论具有超过1m行代码和近35000个类型的解决方案。因此,性能是非常重要的。
我想要做的是:
- 获取当前类
- 获取当前类的命名空间
- 获取所有使用的带有完整名称的类型
如果我能够做到这一点,其他事情将相对容易。我已经试过了,也许我需要打开正在编辑的类的当前项目和编译。但是,打开这些内容需要很长时间,因此性能会非常差。