【发布时间】:2018-11-16 18:39:13
【问题描述】:
当我从 2.0 升级到 .NET Core 2.1 后尝试将应用程序发布到 Web 服务器时,我收到以下消息:“此版本的 Microsoft.AspNetCore.All 仅与 netcoreapp2.1 目标框架兼容。请以 netcoreapp2.1 为目标或选择与 netcoreapp2.0 兼容的 Microsoft.AspNetCore.All 版本。”
它在我的开发机器上运行良好。
这是我的项目文件:
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp2.1</TargetFramework>
<RunPostBuildEvent>Always</RunPostBuildEvent>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.All" Version="2.1.0" />
<PackageReference Include="Microsoft.AspNetCore.Cors" Version="2.1.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="2.1.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="2.1.0" />
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="2.1.0" />
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="2.0.4" />
</ItemGroup>
</Project>
我见过this,但这似乎不是问题。我也试用了 CodeGeneration.Tools 的预发布 2.1 版本,但无法安装。
编辑:我确实在服务器上安装了 dotnet 2.1。
这是我在服务器上看到的:
D:\>dotnet --info
Host (useful for support):
Version: 2.1.0
Commit: caa7b7e2ba
.NET Core SDKs installed:
No SDKs were found.
.NET Core runtimes installed:
Microsoft.AspNetCore.All 2.1.0 [C:\Program Files (x86)\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 2.1.0 [C:\Program Files (x86)\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 2.0.5 [C:\Program Files (x86)\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.0.6 [C:\Program Files (x86)\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.0 [C:\Program Files (x86)\dotnet\shared\Microsoft.NETCore.App]
【问题讨论】:
-
您是否安装了适用的 dotnet 2.1 sdk/runtime(即在服务器上)?
-
是的。对不起,我忽略了这一点。但是,我没有看到 Entity Framework 的 2.1 版本。 EF 是否包含在 dotnet 2.1 中?
-
...您确定您不会意外地在较旧的安装运行时下运行吗?鉴于您的 csproj 肯定是 2.1,在我看来,运行时是这里唯一的变量。
-
我添加了来自 dotnet --info 的结果。安装了多个版本。但是,我从来没有跑到任何地方。当我尝试发布到服务器时,Visual Studio 会给出上述消息。
-
根据docs.microsoft.com/en-us/aspnet/core/fundamentals/… 的建议,我删除了 AspNetCore.All 并将其替换为 AspNetCore.App。但是,我仍然收到 xame 消息。
标签: c# razor-pages .net-core-2.1