我正在使用以下方法编译基本的控制台应用程序:
C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\csc.exe /t:exe /out:myapp.exe Program.cs
首先打印:
Microsoft (R) Visual C# Compiler version 4.6.1038.0
for C# 5
Copyright (C) Microsoft Corporation. All rights reserved.
然后失败,因为我正在使用像$"{x}"
这样的字符串插值。错误是:
error CS1056: Unexpected character '$'
我认为这是因为csc.exe
无法理解C# 6
。如何让这个编译器C# 6
知道?
答案 0 :(得分:5)
您使用的是旧版本的编译器。从this MSDN forum post开始,C#编译器不再是.NET Framework的一部分。你必须自己下载。
你可以从这个NuGet声明中做到这一点:
nuget install Microsoft.Net.Compilers
答案 1 :(得分:0)
我在这里遇到同样的问题;
我使用了Visual Studio 2019安装文件夹中的Roslyn编译器修复了问题,并为其设置了csc的环境变量。
已更改
C:\Windows\Microsoft.NET\Framework64\v4.0.30319
收件人
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\Roslyn
在系统环境变量中工作过??