Skip to content

Latest commit

 

History

History
30 lines (14 loc) · 2.42 KB

display-output-csharp.md

File metadata and controls

30 lines (14 loc) · 2.42 KB

Displaying output in a notebook (C#)

Return values using trailing expressions

When writing C# in a .NET notebook, the C# scripting dialect is used, which you might be familiar with from using the C# Interactive window in Visual Studio. This dialect of C# allows you to end a code submission with an expression and no semicolon. This tells C# scripting to return the value of the expression, which is also the value of the code submission. In a notebook, each cell corresponds to a code submission. This is known as a trailing expression in C#. The notebook will display this as an "execute result" cell output. In Jupyter, this is indicated by the bracketed submission number indicator on the left.

Display helpers

A submission can only have a single return value, and a Jupyter cell can only have a single execute result. If you would like to produce more than one output from a single submission, you can use the display method. In Jupyter, the display method creates a "display data" output. You can see that this type of output doesn't have a corresponding submission number indicator to the left.

You can use display multiple times in a single submission, and you can combine this with a trailing expression.

Display outputs can be updated in place, for example to show the progress of an operation. The display method returns a DisplayedValue object and by calling Update you can replace what was displayed previously.

Console output

It's common to use Console.WriteLine (or Console.Out.WriteLine) in C# to write some information for display, so .NET Interactive captures output and redirects it to the notebook. It does the same for Console.Error, with a different display style to indicate that it was an error.