Search code examples
c#msbuildvisual-studio-2017c#-7.0

How to build .csproj with C# 7 code from command line (msbuild)


I use some C# 7 features in my project:

static void Main(string[] args)
{
}

public byte ContainerVersion
{
    get => 1;
    private set => throw new NotImplementedException();
}

and it builds fine in visual studio 2017, but I get an error on my CI agent when using old msbuild (v14.0 C:\Program Files (x86)\MSBuild\14.0\Bin\msbuid.exe consoleApplication.csproj.):

error CS1513: } expected.


Solution

  • You'll need to install msbuild-2015 on your CI agent.

    https://www.visualstudio.com/thank-you-downloading-visual-studio/?sku=BuildTools&rel=15

    The default install directory for msbuild will be: C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin\MSBuild.exe