当前位置:  开发笔记 > 编程语言 > 正文

C#Console/CLI解释器?

如何解决《C#Console/CLI解释器?》经验,为你挑选了6个好方法。

我想知道是否有类似独立版本的Visual Studios"立即窗口"?有时我只是想测试一些简单的东西,比如"DateTime.Parse("blah")",看看是否有效.但每次我必须创建一个新的控制台应用程序,输入我的代码并测试它.

可悲的是,立即窗口仅在我调试时才起作用.PowerShell能做到吗?只需打开一个类似于cmd.exe的CLI,允许我执行一些C#代码?



1> Will Dean..:

Linqpad - 我一直都这样使用它. http://www.linqpad.net/

不要被名称误导 - 这只是描述了它的原始动机,而不是它的功能.

就在最近,他发布了一个正确完成声明的版本 - 这是一个收费的附加组件(核心工具是免费的),但我认为只需要一点钱,非常值得.



2> James Orr..:

Mono项目包含一个交互式C#shell,这可能正是您所需要的.

http://www.mono-project.com/CsharpRepl



3> Athari..:

C#Interactive窗口和csi.exe REPL已添加到Visual Studio 2015 Update 1:

介绍互动

交互式窗口又回来了!C#Interactive窗口返回Visual Studio 2015 Update 1以及其他一些交互式处理:

C#互动.C#Interactive窗口本质上是一个read-eval-print-loop(REPL),允许您使用.NET技术进行游戏和探索,同时利用IntelliSense,语法着色等编辑器功能.了解有关如何使用C#的更多信息在第9频道互动或阅读我们的初学者演练.

csi.如果您不想打开Visual Studio来使用C#或运行脚本文件,则可以从Developer Command Prompt访问交互式引擎.键入csi /path/myScript.csx以执行脚本文件或键入以简单csi地插入命令行REPL.

脚本API.Scripting API使您能够在主机创建的执行环境中执行C#代码片段.您可以通过查看我们的代码示例来了解有关如何创建自己的C#脚本引擎的更多信息.

请参阅.NET Managed Languages的Visual Studio 2015 Update 1中的新增功能.

基本上,现在你有:

IDE REPL - VS中的C#交互式窗口

脚本解释器 - csi foo.csx来自Dev Cmd Prompt

命令行REPL - csi来自Dev Cmd提示符

脚本API



4> Pete Stensøn..:

尝试编写脚本,它没有集成到VS IDE中,但它确实允许您在脚本窗口中键入和运行C#,而无需项目编译器等...



5> angry person..:

嗯,这不是你问题的直接答案,但你可以看一下这个工具:

片段编译器

此外,如果你想看到IL产生的,或类似的,有一个插入Reflector的工具,称为Snippy,基于Jon在他自己的答案中提到的Snippy工具.

所有这些都非常好用.



6> Dan Blanchar..:

正如您的建议,PowerShell可以做您想要的.例如,要测试你的DateTime.Parse,下面的一个内联将可以解决这个问题:

PS C:\ Documents and Settings\Dan> [System.DateTime] :: Parse("Blah")
使用"1"参数调用"Parse"的异常:"字符串未被识别为有效的DateTime.从索引0开始的未知单词." 在行:1 char:25 + [System.DateTime] :: Parse(<<<<"Blah")

PS C:\ Documents and Settings\Dan> [System.DateTime] :: Parse("1/2/3")

2003年2月1日00:00:00

请注意,上面使用的是当前版本的PowerShell(v1.0).PowerShell的下一个版本将允许您更直接地将C#与PowerShell脚本混合在一起.为了满足您的胃口,请观看Doug Finke的 7分钟截屏视频" C#to PowerShell " .非常令人印象深刻!

推荐阅读
wangtao
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有