如何快速编写和运行小型C#代码

如何快速编写和运行小型C#代码,c#,visual-studio,testing,C#,Visual Studio,Testing,有时我想测试论坛上的新代码,或者需要帮助朋友解决特定的C#问题。问题是我不想每次都在VisualStudio中创建新的“项目”,只是为了编写/运行这个小代码 Java&EclipseIDE提供了“剪贴簿”功能,允许执行任意Java表达式。C程序员有哪些选择?我通常直接从命令行使用csc C:\Users\Greg>csc/o-/debug+ Test.cs 这很好 也适用于测试各种C#、F#或VB代码,而不仅仅是LINQ查询 编辑 我想是时候提一下代码段编译器已经五年多没有更新了,因此不再是最

有时我想测试论坛上的新代码,或者需要帮助朋友解决特定的C#问题。问题是我不想每次都在VisualStudio中创建新的“项目”,只是为了编写/运行这个小代码


Java&EclipseIDE提供了“剪贴簿”功能,允许执行任意Java表达式。C程序员有哪些选择?

我通常直接从命令行使用csc

C:\Users\Greg>csc/o-/debug+ Test.cs

这很好

也适用于测试各种C#、F#或VB代码,而不仅仅是LINQ查询


编辑

我想是时候提一下代码段编译器已经五年多没有更新了,因此不再是最佳选择


然而,我最初并不了解LINQPad。正如Will Dean在评论中提到的,LINQPad对于各种代码都非常优秀,而不仅仅是LINQ查询。事实上,它已经成为我不可或缺的工具。我每天都使用它,不仅是为了快速测试简短的代码片段,还用于相对复杂的迷你程序。它的高级输出格式使快速检查中间结果和最终结果变得非常容易。

这是visual studio中我从未喜欢过的东西。我从VB6中错过的一件事(可能是唯一的一件事)是创建项目并运行它而不保存它或任何东西的能力。你说的很好

通常,每种类型(控制台、Winforms和Web)至少有一个或两个废弃项目,我只是循环使用。通过这种方式,我并不总是创建新项目。

以下是我的工作:

  • 转到工具->选项->项目和解决方案,并禁用“创建新项目时保存”

  • 启动一个新的VS,Ctrl-Shift-N来创建一个项目,并使用它

  • 使用C#Express可以让一些东西启动更快、杂乱程度更低,但仍有足够的能力完成大多数事情


也检查一下,你可以看看C#Scripting

这是一种允许您在不使用IDE的情况下构建快速脚本的功能


bones

我总是保持一份快速版的运行;这可以执行和调试项目,而不需要正确的文件位置(只要不点击save)。为我做这项工作…

我只是使用我为此目的定义的scratch console应用程序项目。我删掉了主要节目中的内容,然后去了城里。如果我决定需要保留我的原型,我会创建一个新项目并复制到它。由于我一直都这样做,所以项目也总是在我最近的项目列表中。

我使用批处理文件(csc.bat):
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\csc%1%2%3%4%5%6%7%8%9

对于vb.net,我使用此批处理文件(vbc.bat):
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\vbc%1%2%3%4%5%6%7/r:system.WINDOWS.forms.dll/r:system.data.dll/r:system.dll

例如:C:>csc testit.cs

每个都将创建一个.net.exe文件。
但是,这种解决方案对于Windows窗体应用程序来说并不太好。

还有一种交互式C#shell,它构建在Mono之上:


这与其他语言类似(例如,使用Ruby的irb)

试试SharpDevelop。它并没有包含所有内容,但对于快速示例来说很好。您可以打开一个解决方案,轻松地交换代码以测试其他内容。在项目属性中,您可以通过组合框选择将解决方案从控制台更改为Windows应用程序。您可以轻松地将代码从C#翻译成Boo、Python、Ruby或VB,或者从这些语言中的任何一种翻译成另一种语言,无论源代码是什么。因此,如果您在web上寻找问题解决方案,但在VB中找不到,但在C#中确实找到了一个,那么您可以将其转换。

看一看


“C#Interactive”窗口非常适合这种情况。

您可以在即时窗口中运行很多东西(调试>>Windows>>即时)

例如,可以运行以下操作: System.IO.File.WriteAllText(@“c:\temp\blah.txt”,“你好!”

有一个在线web C#编译器和执行器:

您可以尝试使用。它使用Roslyn编译器使用C#创建脚本语言。

该网站似乎是一个不错的选择。它具有代码完成、代码计时和NuGet包集成

从他们的网站:

我们是一群厌倦了起步的.NET开发人员 VisualStudio,创建一个新项目并运行它,只是为了测试 简单的代码或试用其他开发人员的示例

这个工具的灵感来源于,非常棒


特别是,我建议尝试他们的MVC模式。在屏幕的左侧,选择下面的
项目类型:MVC

,但是如果您也想与其他人共享代码,那么这是我迄今为止尝试过的最好的方法。对于离线解决方案,LINQPad肯定也会有我的投票权,而不仅仅是LINQ查询。

派对有点晚了,但我来这里是自己搜索的

最适合我的解决方案是使用Visual Studio内的
C#Interactive
-窗口2015或更高版本。 您可以通过
查看
其他窗口
C#Interactive
打开它,或者选择一些C#code并单击右键单击上下文菜单中的
在Interactive
中执行来访问它

以下是有关如何使用它的链接:


我知道它可以在VS2015中使用,但我不认为它可以在较旧的版本中使用。

RoslynPad-是LINQPad的轻量级开源替代品

罗斯林帕德


GitHub:

Visual Studio应该是一个更好的选择,但它太重了。一些简单的测试,我经常在这里尝试

或者使用linqpad和vscode



好的,现在我已经看到了轻薄的IDE