Say you have a .NET Core project that looks like this:
"frameworks": {
"net40": {},
"dotnet5.1": {}
}
And this is your C# code:
public class Foo
{
public static void Blah()
{
#if DOTNET5_1
DoSomething();
#elif NET40
DoSomethingElse();
#endif
}
}
Now, in Visual Studio when you view the .cs
file, one of the #if
sections will be grayed out- either DoSomething
or DoSomethingElse
. Here's how it shows up on my laptop:
Is it possible to get VS to 'switch context' between target platforms, so you can view what would be compiled for a particular platform? For example, I might want to check for any red squiggly lines for each framework before actually building the solution.
Any help would be appreciated, thanks!
At the top of your editor should be the navigation bar. Left in the navigation bar is a dropdown menu that lets you select the context.
If the navigation bar is hidden, you can enable it by going into Tools > Options > Text Editor > C# and check the navigation bar checkbox.