似乎突然出现了一些与asp.net核心包不同步的东西。
看起来Microsoft.AspNetCore.App 2.1.1是16小时前在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 \dotnet\-安装.NET核心先决条件可能有助于解决这个问题:http://go.microsoft.com/fwlink/?LinkID=798306&clcid=0x409 -可以从:https://aka.ms/dotnet-download安装.NET核心框架和SDK -安装了以下版本: 2.1.0 at C:\ProgramFiles\dotnet\shared\Microsoft.AspNetCore.App
如果我将Microsoft.AspNetCore.App的版本更改为2.1.0并执行dotnet还原,就会得到以下结果:
C:_c\cloudscribe.Web.Navigation\src\NavigationDemo.Web\NavigationDemo.Web.csproj : error NU1107:为Microsoft.AspNetCore.Antiforgery检测到的版本冲突。直接从项目引用包以解决此问题。C:_c\cloudscribe.Web.Navigation\src\NavigationDemo.Web\NavigationDemo.Web.csproj : error 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 : error 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.*" />2.1.1似乎没有更新的sdk,但Microsoft.AspNetCore.App 2.1.1在GitHub上的可用性似乎正在破坏我的利益。
发布于 2018-06-20 16:25:52
你的问题是你的csproj的这一行
<PackageReference Include="Microsoft.AspNetCore.App" Version="2.1.*" />*说要选择最新的2.1版本的NuGet包。对于许多软件包,这将是非常好的。但是,该包的v2.1.1也需要安装一个匹配的v2.1.1SDK。到目前为止,它是不可用的(它现在被封锁了)。
但是,如果您阅读从ASP.NET Core2.0迁移到2.1文档,您将看到以下内容:
将指定的"Microsoft.AspNetCore.All“包引用替换为无版本的"Microsoft.AspNetCore.App”包引用。
该版本现在由您要针对的SDK版本推断。这意味着您的csproj现在应该包含以下内容:
<PackageReference Include="Microsoft.AspNetCore.App" />发布于 2018-06-20 03:41:36
2.1.1 (预览) SDK可以在他们的GitHub上使用。
您可以直接在这里下载:
请参见:
我们还在等官方的SDK..。
编辑:
如果您在构建过程中遇到问题,请将以下内容添加到.csproj中
<PropertyGroup>
<TargetLatestAspNetCoreRuntimePatch>true</TargetLatestAspNetCoreRuntimePatch>
</PropertyGroup>更新:
官方发布2.1.1SDK:https://www.microsoft.com/net/download/thank-you/dotnet-sdk-2.1.301-windows-x64-installer
发布于 2018-06-21 20:45:55
除了其他建议外,我还需要将Microsoft.NetCore.App提高到2.1.1。因为我无法通过UI完成这一任务,所以向.csproj添加以下内容是有效的。
<PackageReference Include="Microsoft.NetCore.App" Version="2.1.1" />https://stackoverflow.com/questions/50928947
复制相似问题