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

时间:2008-12-21 18:12:28

标签: c# visual-studio testing

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

Java& Eclipse IDE提供了“Scrapbook”功能,允许执行任意Java表达式。 C#程序员有哪些选择?

20 个答案:

答案 0 :(得分:51)

Snippet Compiler非常适合这一点。

LINQPad也适用于测试LINQ代码。


修改

我想我现在是时候提到Snippet Compiler在五年内没有更新,因此不再是最佳选择。

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

答案 1 :(得分:23)

派对有点晚了,但我自己一边寻找这个就来到这里。

对我来说最合适的解决方案是使用C# Interactive窗口。 您可以通过View>打开它来访问它。 Other Windows> C# Interactive,或者在右键单击上下文菜单中选择一些c#代码并点击Execute in Interactive

以下是有关如何使用它的链接:http://dailydotnettips.com/2016/01/12/use-c-interactive-window-for-your-coding-experiment-in-visual-studio-2015/

我知道它在VS2015中有效,我认为它不适用于旧版本。

答案 2 :(得分:19)

网站.NET Fiddle似乎是个不错的选择。它具有代码完成,代码定时和NuGet包集成。

从他们的网站:

  

我们是一群厌倦了开始的.NET开发人员   Visual Studio,创建一个新项目并运行它,只是为了测试   简单的代码或试用其他开发人员的样本。

     

这个工具的灵感来自http://jsfiddle.net,这真是太棒了。

特别是,我建议尝试他们的MVC模式。在屏幕左侧选择Project Type: MVC

答案 3 :(得分:18)

这就是我的所作所为:

  • 转到工具 - >选项 - > ProjectsAndSolutions,并禁用“创建时保存新项目”。

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

  • 使用C#Express可以更快地启动并减少混乱,但仍然有足够的能力来完成大部分工作。

答案 4 :(得分:7)

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

  

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

答案 5 :(得分:3)

答案 6 :(得分:3)

还有基于Mono构建的交互式C#shell:

http://mono-project.com/CsharpRepl

这与其他语言类似(例如,irb with Ruby)

答案 7 :(得分:3)

查看Introducing the Microsoft “Roslyn” CTP

“C#Interactive”窗口非常适用于此。

答案 8 :(得分:3)

你可以在立即窗口中运行很多东西(Debug>> Windows>> Immediate)

例如,您可以运行以下命令: System.IO.File.WriteAllText(@“c:\ temp \ blah.txt”,“你好!”);

答案 9 :(得分:2)

在这里的后期,但如果您还想与其他人分享代码,那么.NET Fiddle是我迄今为止尝试过的最好的代码。对于离线解决方案,LINQPad肯定会得到我的投票,而不仅仅是LINQ查询。

答案 10 :(得分:2)

我只是使用我为此目的定义的临时控制台应用程序项目。我删除了主程序中的所有内容并进入城镇。如果我决定我需要保留我原型的任何东西,我会创建一个新项目并复制到它。由于我一直这样做,所以项目也总是在我最近的项目列表中。

答案 11 :(得分:2)

我使用批处理文件(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窗体应用程序来说并不是那么好。

答案 12 :(得分:1)

尝试SharpDevelop。它不包含所有内容,但适用于快速示例。您可以打开解决方案并轻松交换代码以测试其他内容。在项目属性中,您可以通过组合框选择将解决方案从控制台更改为窗口应用程序。您可以轻松地将代码从C#转换为Boo,Python,Ruby或VB,或从任何这些语言转换为另一种语言,从您的源代码开始。因此,如果您在Web上寻找问题解决方案并且无法在VB中找到问题解决方案 - 但是在C#中找到一个解决方案,您可以将其转换。

答案 13 :(得分:1)

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

答案 14 :(得分:1)

有一个在线Web C#编译器和执行器:http://www.compileonline.com/compile_csharp_online.php

答案 15 :(得分:1)

我总是保留Express Edition的副本;这可以执行和调试项目而无需正确的文件位置(只要你没有点击保存)。这份工作对我来说......

答案 16 :(得分:1)

你可以看看C#Scripting。

C# scripting

允许您在不使用IDE的情况下构建快速脚本。

HTH

答案 17 :(得分:1)

这是我从未喜欢的视觉工作室。我从VB6中遗漏的一件事(也是唯一一件事)是能够创建一个项目,并在不保存它的情况下运行它。对你说的话很好。

我通常至少有一个或两个每种类型的废料项目(控制台,Winforms和Web),我只是旋转和使用。这样我就不会总是创造新的项目。

答案 18 :(得分:0)

RoslynPad -LINQPad的不错的轻量级开源替代品。

RoslynPad,https://roslynpad.net/

GitHub:https://github.com/aelij/RoslynPad

答案 19 :(得分:0)

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

<块引用>

https://docs.microsoft.com/zh-cn/learn/modules/csharp-write-first/2-exercise-hello-world

或者使用 linqpad 和 vscode

<块引用>

https://www.linqpad.net/
https://code.visualstudio.com/