一言而论:基于麒麟服务器V10的.NET部署、运行,涉及的信创产品有麒麟、金仓,使用了.NET 6 API
紧跟着笔者的上一篇文章《银河麒麟V10的使用》,这次笔者调研的内容是.NET在麒麟上的部署、人大金仓数据库在麒麟上的安装,以及.NET与金仓的通讯。
开发机:Windows电脑
宿主机:Windows电脑
sudo su #提权
mkdir -p $HOME/dotnet && tar zxf aspnetcore-runtime-6.0.21-linux-x64.tar.gz -C $HOME/dotnet #创建文件夹并解压到指定文件夹
vi /etc/profile #打开配置文件
#在文件内加入这两个,写入全局环境变量
export DOTNET_ROOT=$HOME/dotnet
export PATH=$PATH:$DOTNET_ROOT
source /etc/profile #退出文件后,重新执行此文件
dotnet --info #查看.NET 信息
dotnet --version #查看.NET 版本信息
按照《安装kingbaseES》章节-《图形化安装》操作即可
KingbaseES V8 — KingbaseES产品手册
另外,KES的管理系统KStudio(下面简称KS)在数据库安装完毕后,会跟着一起被安装,这一点和SQLServer、SSMS的分开安装不同。
为了在下面的.NET 中使用,我们使用KS来新建库、表。
需要注意点:使用企业版权限,而不是开发版权限
这里我们使用VS2022直接新建.NET 6 API;这里就不多说.NET怎么用了,主要讲一下需要下载个包来调用KES——sqlsugarcore.kdbndp

然后使用类似SQLServer,只是对应的类型换一下,比如SQLCommand换成KDBCommand;编程指导可以看这个:金仓数据库.NET开发案例
另外,为了能在局域网调试,将麒麟的防火墙开放数据库端口54321
firewall-cmd --list-all #展示目前防火墙规则列表
firewall-cmd --permanent --add-port=54321/tcp #添加tcp端口
firewall-cmd --reload #重新加载防火墙
微软文档显示可以在Linux上,通过apache或者nginx来部署.NET,这里我们为看效果,直接使用.NET自带的kestrel进行部署,对另外两种方式感兴趣的朋友们可以看下面的链接。
Host ASP.NET Core on Linux with Apache | Microsoft Learn
Host ASP.NET Core on Linux with Nginx | Microsoft Learn
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --reload
dotnet WebApplication1.dll --urls "http://*:80"
http://192.168.197.136/swagger/index.html
本博客讲解了如何在麒麟V10上部署并运行.NET、安装金仓数据库并实现.NET与金仓进行通讯