我正在尝试使用Mac OSX上单独的类库中的视图运行项目,如下文
中所述https://blogs.msdn.microsoft.com/webdev/2018/03/01/asp-net-core-2-1-razor-ui-in-class-libraries/
问题是我无法在Mac OS上使用Visual Studio Community 7.4构建类库项目。
项目使用命令行(donet build)构建没有问题,但是当我尝试使用Visual Studio构建它时会抛出两个错误:
Python 3.6.4+ (default, Feb 12 2018, 08:25:03) [GCC 7.3.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import pyatspi >>> pyatspi.__path__ ['/usr/lib/python3/dist-packages/pyatspi']
/usr/local/share/dotnet/sdk/NuGetFallbackFolder/microsoft.aspnetcore.razor.design/2.1.0-preview1-final/build/netstandard2.0/Microsoft.AspNetCore.Razor.Design.Compilation.targets(10,10): Error MSB4064: The "SharedCompilationId" parameter is not supported by the "Csc" task. Verify the parameter exists on the task, and it is a settable public instance property. (MSB4064)
当我将RazorCompileOnBuild更改为false或从Content Build项目中删除内容时,编译没有错误。
答案 0 :(得分:39)
转到Nuget控制台并添加:
Install-Package Microsoft.Net.Compilers -Version 2.8.2
您将不再遇到上述错误。
答案 1 :(得分:4)
我在构建服务器上有此问题,但在本地没有。
解决方案: 在生成服务器上安装更新的Visual Studio。就我而言2017.15.4
答案 2 :(得分:2)
我发现您可以通过两种方式解决此问题。
解决方案1
将Microsoft.Net.Compilers
编译器软件包添加到项目中。
解决方案2
使用命令行构建项目。 dotnet build
答案 3 :(得分:1)
In my case, I had installed the .NET Core 2.1 SDK, but not the runtime.
Strange how Microsoft don't include the runtime in the SDK.
答案 4 :(得分:1)