.net core 2.1.4难道不向下兼容2.1.1?

发布于 2022-09-11 16:30:40 字数 2265 浏览 23 评论 0

在visual studio 2017中用asp.net core webapi模板新建了一个demo项目testdotnetcore2,然后发布到远程服务器(腾讯云服务器CentOS 7)上。

接着在腾讯云服务器的发布目录上运行dotnet testdotnetcore2.dll时,提示如下错误:

It was not possible to find any compatible framework version
The specified framework 'Microsoft.AspNetCore.App', version '2.1.1' was not found.
- Check application dependencies and target a framework version installed at:

/

- Alternatively, install the framework version '2.1.1'.

图片描述

大概意思是版本不兼容,没找到2.1.1版,而我之前在腾讯云服务器安装的版本是2.1.4:
图片描述

难道.net core 2.1.4不向下兼容2.1.1的吗?

======================================================================
20181028补充:

注:事实上问题截图中所说的“没找到2.1.1版”,指的是没找到“Microsoft.AspNetCore.App的2.1.1版”,而不是没找到“.net core的2.1.1版”。Microsoft.AspNetCore.App是asp.net core(包括在.net core中)所创建的webapi项目的一个依赖项。

折腾了两天,终于解决了。

切记一点:服务器上不要用网上大部分教程中所说的yum install来安装sdk,这样安装的版本和/或其依赖包的版本与客户端安装的很可能不一致,从而导致出错。

解决步骤:

1)先删除服务器上之前通过yum install安装的dotnet-sdk:yum remove dotnet*

2)在微软官网页面微软Github发布页面分别下载同一个版本号(如2.1.403)、同一种平台架构(如x64)的SDK的Windows安装程序(.NET Core Installer;客户端用Mac的下载相应的Mac版即可)和Linux二进制(.NET Core Binaries)(注:SDK包含了与之匹配的Runtime,因此不需要另外再下载Runtime):

Windows安装程序直接点击链接下载即可;
Linux二进制下载(在网页上点击下载链接可提取到url):wget https://download.visualstudio.microsoft.com/download/pr/e85de743-f80b-481b-b10e-d2e37f05a7ce/0bf3ff93417e19ad8d6b2d3ded84d664/dotnet-sdk-2.1.403-linux-x64.tar.gz

3)分别安装:

Windows安装程序为exe执行文件,直接双击安装即可;
Linux二进制安装(在网页上点击下载链接时会同时打开[安装指南页面][5]):
    mkdir -p $HOME/dotnet && tar zxf dotnet-sdk-2.1.403-linux-x64.tar.gz -C $HOME/dotnet
    export DOTNET_ROOT=$HOME/dotnet 
    export PATH=$PATH:$HOME/dotnet
    
    注意:最好将这两个环境变量写入.bashrc或.zshrc文件中,以免当前shell关闭后就失效了。

4)客户端使用visual studio发布asp.net core应用时,注意选择刚刚安装的版本(如果安装了多个不同版本的话),发布到服务器后,在服务器上运行启动服务,应该就正常了。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

若沐 2022-09-18 16:30:40

感谢楼主我也是腾讯的云服务器 今天搞了一下午,总以为我本机是netcore2.1.1版本 换了又换 坑死人啦 非常感谢,
不介意可以交个朋友 QQ:1052231926

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文