首页 > 解决方案 > Netcore 2.1.1 发布导致应用无法运行

问题描述

似乎突然与 asp.net 核心包不同步了。

它看起来像是Microsoft.AspNetCore.App 2.1.116 小时前在 nuget.org 上发布的,但只有 158 次下载,显然我是下载者之一。

我的.csproj文件是这样的:

<Project Sdk="Microsoft.NET.Sdk.Web">
  <PropertyGroup>
    <TargetFramework>netcoreapp2.1</TargetFramework>
  </PropertyGroup>
  <ItemGroup>
    <ProjectReference Include="..\cloudscribe.Web.Navigation\cloudscribe.Web.Navigation.csproj" />
    <ProjectReference Include="..\cloudscribe.Web.SiteMap\cloudscribe.Web.SiteMap.csproj" />
    <ProjectReference Include="..\cloudscribe.Web.SiteMap.FromNavigation\cloudscribe.Web.SiteMap.FromNavigation.csproj" />
  </ItemGroup>
  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.App" Version="2.1.*" />
    <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="2.1.*" />
  </ItemGroup>
</Project>

它可以构建,但是当我尝试运行它时,我得到:

找不到任何兼容的框架版本找不到指定的框架“Microsoft.AspNetCore.App”,版本“2.1.1”。- 检查应用程序依赖项并定位安装在以下位置的框架版本:C:\Program Files\dotnet\ - 安装 .NET Core 先决条件可能有助于解决此问题: http: //go.microsoft.com/fwlink/ ?LinkID=798306&clcid=0x409 - .NET Core 框架和 SDK 可以从以下位置安装: https ://aka.ms/dotnet-download - 安装以下版本:2.1.0 在 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore。应用程序]

如果我将 Microsoft.AspNetCore.App 的版本更改为 2.1.0 并执行 dotnet restore 我会得到:

C:_c\cloudscribe.Web.Navigation\src\NavigationDemo.Web\NavigationDemo.Web.csproj:错误 NU1107:检测到 Microsoft.AspNetCore.Antiforgery 的版本冲突。直接从项目中引用包来解决这个问题。C:_c\cloudscribe.Web.Navigation\src\NavigationDemo.Web\NavigationDemo.Web.csproj:错误 NU1107:NavigationDemo.Web -> cloudscribe.Web.Navigation -> Microsoft.AspNetCore.Mvc.Razor 2.1.1 -> Microsoft .AspNetCore.Mvc.ViewFeatures 2.1.1 -> Microsoft.AspNetCore.Antiforgery (>= 2.1.1) C:_c\cloudscribe.Web.Navigation\src\NavigationDemo.Web\NavigationDemo.Web.csproj:错误 NU1107:NavigationDemo。 Web -> Microsoft.AspNetCore.App 2.1.0 -> Microsoft.AspNetCore.Antiforgery (= 2.1.0)。C:_c\cloudscribe.Web.Navigation\src\NavigationDemo.Web\NavigationDemo.Web.csproj 的恢复在 3.54 秒内失败。

我想这部分是由于我的解决方案中的其他项目具有这样的依赖关系:

<PackageReference Include="Microsoft.AspNetCore.Mvc" Version="2.1.*" />
<PackageReference Include="Microsoft.Extensions.Caching.Abstractions" Version="2.1.*" />
<PackageReference Include="Microsoft.Extensions.Configuration.Abstractions" Version="2.1.*" />
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="2.1.*" />
<PackageReference Include="Microsoft.Extensions.Options" Version="2.1.*" />
<PackageReference Include="Newtonsoft.Json" Version="11.0.*" />
<PackageReference Include="Microsoft.Extensions.Options.ConfigurationExtensions" Version="2.1.*" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.Razor" Version="2.1.*" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.Abstractions" Version="2.1.*" />

似乎没有更新的 sdk,2.1.1但 GitHub 上的可用性Microsoft.AspNetCore.App 2.1.1似乎对我来说是破坏性的。

标签: asp.net-core

解决方案


2.1.1(预览版)SDK 可以在他们的 GitHub 上找到。

你可以在这里直接下载:

https://dotnetfeed.blob.core.windows.net/orchestrated-release-2-1/20180605-09/final/assets/Sdk/2.1.301-preview-008906/dotnet-sdk-2.1.301-win- x64.exe

看:

https://github.com/dotnet/versions/tree/7a833dddfddc27f2074b755b94234a25b9757637/build-info/dotnet/product/cli/release/2.1

我们还在等待官方SDK...

编辑:

如果您在构建时遇到问题,请将以下内容添加到您的.csproj

<PropertyGroup>     
  <TargetLatestAspNetCoreRuntimePatch>true</TargetLatestAspNetCoreRuntimePatch>
</PropertyGroup>

更新:

官方2.1.1 SDK现已发布:https ://www.microsoft.com/net/download/thank-you/dotnet-sdk-2.1.301-windows-x64-installer


推荐阅读