有时我想从论坛测试新代码,或者我需要帮助我的朋友解决特定的C#问题。问题是我不想每次在Visual Studio中创建新的“项目”只是为了编码/运行这个小代码。
Java& Eclipse IDE提供了“Scrapbook”功能,允许执行任意Java表达式。 C#程序员有哪些选择?
答案 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)
答案 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)
答案 17 :(得分:1)
这是我从未喜欢的视觉工作室。我从VB6中遗漏的一件事(也是唯一一件事)是能够创建一个项目,并在不保存它的情况下运行它。对你说的话很好。
我通常至少有一个或两个每种类型的废料项目(控制台,Winforms和Web),我只是旋转和使用。这样我就不会总是创造新的项目。
答案 18 :(得分:0)
RoslynPad -LINQPad的不错的轻量级开源替代品。
RoslynPad,https://roslynpad.net/
答案 19 :(得分:0)
Visual Studio 应该是更好的选择,但是太重了。一些简单的测试,我经常在这里尝试。
<块引用>https://docs.microsoft.com/zh-cn/learn/modules/csharp-write-first/2-exercise-hello-world
或者使用 linqpad 和 vscode
<块引用>