Is there an interactive interpreter for C#? [closed]
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 8 years ago.
Improve this questionSometimes it's handy to have access to your language to do quick things without starting Visual Studio and creating a new console app.
Is there some开发者_StackOverflow中文版thing like Python's interactive mode or groovy shell, except for C#?
Update for 2022
After installing Visual Studio 2022, add the following to your PATH
environment variable.
C:\Program Files (x86)\Microsoft Visual Studio\Shared\Packages\Microsoft.Net.Compilers.2.6.1\tools
Then open your terminal (CMD, PowerShell, Windows Terminal) and type csi
to run C Sharp Interactive.
You'll get something like this:
PS C:\> csi
Microsoft (R) Visual C# Interactive Compiler version 2.6.1.62414
Copyright (C) Microsoft Corporation. All rights reserved.
Type "#help" for more information.
> var list = new List<int>{ 1, 2, 3, 4 };
> list // You don't need to call Console.WriteLine() to see values
List<int>(4) { 1, 2, 3, 4 }
> // You can keep adding lines as needed
Previous Answer
With the Visual Studio 2015 Update 1 there now is a C# Interactive tool window built into Visual Studio.
The new tool window is invoked by going to View
→ Other Windows
→ C# Interactive
.
For Visual Studio 2010 to 2013 you can use the Roslyn CTP to get a similar tool window in Visual Studio.
Have a look at CsharpRepl (part of the Mono project). Never used it myself, I hasten to add.
For LINQ stuff, you should also look at LINQPad.
There are several.
- CsharpRepl
- CSI: A Simple C# Interpreter
- SnippetCompiler
- LINQPad
Like others noted, Mono's CSharpRepl is probably the right answer. However, if you're not fixed to C#, then PowerShell is a pretty nice environment of playing around with .NET. I frequently use it to test regular expressions, format strings, etc. All the kinds of stuff you have ConsoleProject163 lying around for :)
In addition to the other good answers here (+1), there is also CSI and the immediate window in Visual Studio.
Here is a Mono CsharpRepl which is what you are looking for.
This documents the features available in the C# interactive shell that is part of Mono's C# compiler. An interactive shell is usually referred to as a read eval print loop or repl. The C# interactive shell is built on top of the Mono.CSharp (http:/monodoc/N:Mono.CSharp) library, a library that provides a C# compiler service that can be used to evaluate expressions and statements on-the-fly.
There is ScriptCS which uses the Roslyn CTP nuget package.
I think CShell would be a nice contribution to answers given here. It provides code completion enabled REPL command window as well as a lightweight workspace management tools to include some scratch files and library references.
With Roslyn CTP there now is a full C# interactive window from Microsoft direct in Visual Studio!! Works great! So far runs all my libraries. After install: Invoking View -> Other Windows -> C# Interactive from the menu.
I use ideone.com sometimes, but LINQPad is a good choice if an install is acceptable.
You can use this developed by Miguel De Icaza, is shipped with mono and have code completion
If you are looking for a simple web based environment to crank out some C# code try coderpad.io Not sure if you can add libraries n' all but its a quick and simple solution if you are just interested in testing out several commands
精彩评论