【发布时间】:2016-07-27 15:01:55
【问题描述】:
据我了解,有两种方法可以分发和使用 roslyn 分析器:-
- 作为 Visual Studio 插件
- 作为 Nuget 包
我经常发现自己想要强制执行某些特定于域的限制,以及方便的代码修复。 (例如,“我们需要实体框架延迟加载,因此 WidgetFrobber.EntityFrameworkEntities 命名空间中的每个导航属性都应该是虚拟的。”)
如果我的团队中有人不小心写了public ICollection<Widget> 而不是public virtual ICollection<Widget>,那么编写一个导致构建失败的小型分析器是微不足道的,但是因为这个假设的分析器不打算在我的团队之外共享(或者,事实上,除了它定义的 .sln 之外)我宁愿在更新分析器时不分发插件或更新 nuget 包。
References -> Add Reference -> Project让我引用分析器的类型,但实际上并未将其添加为分析器。References -> Analyzers -> Add Analyzer -> Browse...需要 .dll 而不是项目引用。
是否可以在定义它的 .sln 中引用 Roslyn 分析器,就像我可以引用另一个项目一样?
【问题讨论】:
标签: c# visual-studio visual-studio-2015 roslyn-code-analysis