.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

可以正常运行了。

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

总结

暂无,下次再会!

相关推荐
周杰伦fans16 小时前
AutoCAD .NET 二次开发:深入理解 EntityJig 的工作原理与正确实现
开发语言·.net
William_cl1 天前
【C#/.NET 进阶】ASP.NET 架构与最佳实践:DI 依赖注入(IoC 核心)从入门到避坑
c#·asp.net·.net
武藤一雄1 天前
WPF:MessageBox系统消息框
前端·microsoft·c#·.net·wpf
武藤一雄1 天前
WPF进阶:万字详解WPF如何性能优化
windows·性能优化·c#·.net·wpf·.netcore·鲁棒性
唐青枫2 天前
别再层层传参了!C#.NET AsyncLocal 异步上下文透传实战
c#·.net
小邓的技术笔记2 天前
.NET 10 使用 Microsoft.AspNetCore.OpenApi 实现 API 版本管理
.net
夏霞2 天前
IIS 应用程序池 3 种标识:ApplicationPoolIdentity / LocalSystem / LocalService 权限区别(超清晰)
c#·.net
回忆2012初秋3 天前
Quartz.NET 全面解析与实战指南
.net
我是唐青枫3 天前
C#.NET ThreadLocal 深入解析:线程独享数据、性能收益与实战边界
c#·.net
唐青枫3 天前
别再把增删改查写成一锅粥!C#.NET CQRS 从原理到实战
c#·.net