How do I use the C#6 "Using static" feature?
It appears the syntax has slightly changed since those blog posts were written. As the error message suggests, add static
to your include statement:
using static System.Console;
// ^
class Program
{
static void Main()
{
WriteLine("Hello world!");
WriteLine("Another message");
}
}
Then, your code will compile.
Note that, in C# 6.0, this will only work for members declared as static
.
For example, consider System.Math
:
public static class Math {
public const double PI = 3.1415926535897931;
public static double Abs(double value);
// <more stuff>
}
When using static System.Math
, you can just use Abs();
.
However, you'd still have to prefix PI
because it isn't a static member: Math.PI;
.
Starting with C# version 7.2, this shouldn't be the case, const
values like PI
can be used as well.