有没有办法在 VS 之外使用 C# 交互式 shell 窗口(来自 Roslyn CTP)?还是有类似的东西可用?
5 回答
目前,交互式窗口仅适用于 Visual Studio。Roslyn 公开了交互式窗口使用的脚本 API,因此您真的希望交互式窗口在其他地方运行,请随意编写!
几年后(啊!)这个空间终于有了一些东西!壳牌。从网站:
CShell 是一个交互式 C# 脚本环境。它允许您在类似环境的控制台中使用 C# 而没有任何绒毛,称为 read-eval-print-loop (REPL)。您的代码直接在 shell 窗口中评估和执行,无需编译单独的可执行文件,然后在不同的进程中运行。可以在 C# 脚本中编写更精细的代码,然后将其作为一个文件、一行或一个选择进行评估。然后,您的结果可以轻松转储到 HTML(如 LINQPad)或作为数据网格查看或绘制到图表。
需要明确的是,C# 交互窗口使用多个 Visual Studio 组件(例如 VS 编辑器),因此它不能托管在 VS 之外。正如 Jason Malinowski 所说,您可以使用Roslyn Scripting API在 VS 之外非常轻松地创建一个又快又脏的交互式窗口。此外,如果您希望在 VS 之外评估代码,您可以创建一个 C# 脚本文件 (.csx),像在交互式窗口中一样添加顶级代码,然后使用 rcsi.exe 二进制文件运行它随 Roslyn CTP 一起提供。
这是一个简单的示例,虽然非常少。不支持块{}
http://www.amazedsaint.com/2011/10/c-vnext-roslynan-introduction-and-quick.html
csi.exe 是 C# 交互式的命令行版本。它与 Visual Studio 一起提供。在开发人员命令提示符下键入 csi。