.NET Core 2.0 から 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>
私は見たこれですが、問題はなさそうです。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]
ベストアンサー1
私も同じ問題を抱えていましたが、適切なターゲット環境の公開プロファイルファイル(.pubxml)を更新していませんでした。
< TargetFramework>netcoreapp2.1< /TargetFramework>
そして、先ほどの回答に関して
< DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="2.0.1" />
ショーは2.1バージョンでは廃止されたため削除され、現在は含まれています