我有一个ASP.NET Core C#网络应用程序。我进行了一些更改,现在使用了C# 7.1的功能。我更改了项目版本,以便它可以编译和运行良好。然而,当我尝试发布项目时,出现错误:
特性“默认文本”在C# 7.0中不可用。请使用7.1或更高版本的语言。
我看到的编译命令是:
C:...\.nuget\packages\microsoft.net.compilers\2.6.1\tools\csc.exe /noconfig /unsafe- /checked- /nowarn:1701,1702,1705,1701,1702,2008 /nostdlib+ /errorreport:prompt /warn:4 /define:TRACE;RELEASE;NETCOREAPP2_0 /errorendlocation /preferreduilang:en-US /warnaserror+:NU1605`
如其他地方建议的那样,我安装了 Microsoft.Net.Compilers
(v2.6.1),但没有任何变化。
是否有 Visual Studio 设置会特别影响发布?
更新: 看起来控制台应用程序没有这个问题。 如果它成功构建,则也可以成功发布。 但是,Web 应用程序无法发布。有人成功地发布了具有 C# 7.1 功能的 ASP.NET Core Web 应用程序吗?
csc.exe
不同。我已经上传了我的Visual Studio配置详细信息以及发布日志到Gist - 也许这可以帮助你 https://gist.github.com/oleh-zheleznyak/458230bb535366c378fc3b7380fbc2bf - ironstone13dotnet cli
发布是可接受的解决方法,并且符合脚本化部署的要求! - Felix