.NET国产化改造探索(六)、银河麒麟操作系统中安装多个.NET版本

随着时代的发展以及近年来信创工作和...废话就不多说了,这个系列就是为.NET遇到国产化需求的一个闭坑系列。接下来,看操作。

上一篇文章介绍了如何在银河麒麟操作系统上,使用Nginx+.NET程序实现自启动。本文介绍下如何在一个环境中,安装多个版本的.NET 运行时。

由来

首先在人大金仓数据库中,创建一个AdminDemo数据库。

bash 复制代码
./createdb AdminDemo -U system

创建完成后,可以使用ksql 命令登录到此数据库。

bash 复制代码
./ksql -U system -d AdminDemo

查询系统数据库

bash 复制代码
select datname from sys_database;

看到AdminDemo数据库已创建成功了。

接着打开解决方案,添加连接人大金仓数据库的字符串,然后进行打包,打包好之后,上传到var/www目录中,这个环节之前的文章介绍过,可以参考我之前的文章。.NET国产化改造探索(三)、银河麒麟安装.NET 8环境

接着运行.dll程序集,他直接报了一个错,意思让我去安装.NET 7,如下图

多个.NET 运行时并存

这就涉及到一个问题,如果是这台服务器需要多个.NET环境的时候,该如何操作呢?其实跟安装.NET8的时候一样。下载需要的.NET运行时,进行安装就可以了。安装.NET 8之前介绍过,不懂的小伙伴可以翻一下之前的文章,下面介绍下在已经有.NET 8的环境中,如何安装其他版本的.NET环境,本文以.NET 7为例,从官网下载.NET 7运行时,上传到服务器中。如下图

接着运行下面的命令

bash 复制代码
mkdir -p $HOME/dotnet7.0 && tar zxf dotnet-sdk-7.0.405-linux-x64.tar.gz -C $HOME/dotnet7.0
export DOTNET_ROOT=$HOME/dotnet7.0
export PATH=$PATH:$HOME/dotnet7.0

做一个软链接

bash 复制代码
ln -s /root/dotnet7.0/dotnet /usr/local/bin/dotnet7.0

此时,我们就可以使用下面的命令,查看是否安装成功。

bash 复制代码
dotnet7.0 --info

完成后,为了保证所有运行时都可以正常运行,把.NET8 也做下软链接,输入如下命令

bash 复制代码
ln -s /root/dotnet/dotnet /usr/local/bin/dotnet

此时,.NET 8环境和.NET7环境都已经完成了,回到/var/www目录下,输入下面的命令

bash 复制代码
dotnet7.0 xxx.dll

可以正常运行了。

折腾了半天时间,总算是可以正常运行了。

总结

暂无,下次再会!

相关推荐
学以智用21 小时前
C# Console App(控制台应用)模板详解
.net
宝桥南山2 天前
.NET 11 - 尝试一下Minimal API中的异步验证新特性
microsoft·微软·c#·asp.net·.net·.netcore
无风听海2 天前
深入理解.NET中的 Lazy<T>
服务器·php·.net
海盗12342 天前
微软技术日报 2026-10-14:十月补丁 1411 个漏洞,.NET 11 交出 RC2
人工智能·microsoft·机器人·aigc·.net
学以智用2 天前
.NET WinForms / WPF / Blazor 模板详解
.net
黄一一9112432 天前
吾爱大佬开发,离线可用!PDF文件处理工具,本地网页版文件-浏览器里就能搞定,所有操作系统可用
windows·安全·阿里云·pdf·.net·开源软件
慧都小妮子3 天前
MSG 附件太占内存?Aspose.Email for .NET 26.9 延迟加载
c#·.net·aspose·内存优化·延迟加载·aspose.email·附件内存
学以智用3 天前
ASP.NET Core 项目模板详解:Web应用 / Web API / MVC / Razor Pages
.net
IT规划师4 天前
MQTT实战 - 用了8年MQTT,我为什么还要重新系统啃一遍(一)
物联网·.net
邹肖桥4 天前
使用S7.net动态库对西门子Plc S7-1200进行通讯操作
.net