首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Netcore2.1.1版本导致应用程序无法运行

Netcore2.1.1版本导致应用程序无法运行
EN

Stack Overflow用户
提问于 2018-06-19 12:51:59
回答 7查看 11.7K关注 0票数 19

似乎突然出现了一些与asp.net核心包不同步的东西。

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

我的.csproj文件是这样的:

代码语言:javascript
复制
<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秒内恢复失败

我认为这在一定程度上是由于我的解决方案中的其他项目具有如下的依赖性:

代码语言:javascript
复制
<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上的可用性似乎正在破坏我的利益。

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2018-06-20 16:25:52

你的问题是你的csproj的这一行

代码语言:javascript
复制
<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现在应该包含以下内容:

代码语言:javascript
复制
<PackageReference Include="Microsoft.AspNetCore.App" />
票数 7
EN

Stack Overflow用户

发布于 2018-06-20 03:41:36

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

代码语言:javascript
复制
<PropertyGroup>     
  <TargetLatestAspNetCoreRuntimePatch>true</TargetLatestAspNetCoreRuntimePatch>
</PropertyGroup>

更新:

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

票数 8
EN

Stack Overflow用户

发布于 2018-06-21 20:45:55

除了其他建议外,我还需要将Microsoft.NetCore.App提高到2.1.1。因为我无法通过UI完成这一任务,所以向.csproj添加以下内容是有效的。

代码语言:javascript
复制
<PackageReference Include="Microsoft.NetCore.App" Version="2.1.1" />
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50928947

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档