據我所知有兩種方式來分配和消費羅斯林分析儀: -我可以在定義的解決方案中使用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內羅斯林分析?
啊!據推測,如果我設置瞭解決方案配置,以便Debug配置構建分析儀的Release配置,並設置項目依賴關係以便首先構建分析儀,那應該解決? –
@IainGalloway:是的。或者,您可以編輯'csproj'來使用引用DLL的路徑中的當前配置(儘管VS可能會在保存時覆蓋該配置)。 – SLaks
完美,謝謝! –