是否可以从Rider中的C#Interactive访问当前解决方案源?

时间:2019-08-29 05:51:29

标签: jetbrains-ide roslyn-code-analysis rider

我正在寻找一种从Rider(或Resharper)内部以编程方式修改解决方案中的源的方法。 例如,我有一个包含1000个查找/替换(F / R)字符串的元组数组来执行主要重构,并且我可能想在属性中查找F的用法,将其替换为{{1 }},然后检查文件R部分中是否存在'using blah.blah;'。 显然,我可以编写一个应用程序来执行此操作,但是我想知道是否可以在Rider中使分析器可见,从而简化该过程并使其更通用,以进行大规模重构。

1 个答案:

答案 0 :(得分:0)

C#Interactive实际上只是一个“ REPL”,可以执行C#代码和引用程序集(例如您项目中的程序集)。除了在那里手动使用文件I / O之外,它不提供对源代码的访问。

您的用例听起来确实很适合{Sharpper中的"structural search and replace",但not yet available in Rider(可以随时解决该问题)。

另一种选择是编写使用ReSharper/Rider's underlying PSI的插件(使用this template更容易上手)或创建Roslyn-based analyzer and fix which Rider will pick up