麒麟系统使用-进行.NET开发
文章目录
- 前言
- 一、搭建dotnet环境
- 1.获取相关资源
- 2.配置dotnet
- 二、使用dotnet
- 三、其他说明
- 总结
前言
麒麟系统的内核是基于linux的,如果需要进行.NET开发,则需要安装特定的应用。由于NET Framework 是仅适用于 Windows 版本的 .NET,所以要进行.NET开发需要特定的安装及配置。使用.NET方式与在windows环境下使用有些出入。本文将细致讲解在如何在麒麟系统中使用.NET。
一、搭建dotnet环境
1.获取相关资源
我们进入微软的官网下载相关的.NET SDK下载 .NET
我们可以根据需要选择当前在用的适用于麒麟系统的工具包(例如 选择下载.NET8.0)
最终我们获取压缩文件dotnet-sdk-8.0.410-linux-arm64.tar.gz
根据需要我们可以将这个压缩文件解压到我们的需要放置的位置(本文将该文件解压后挪到了/data/dotnet-sdk-8.0.410-linux-arm64 路径下)。
我们也可以根据需要,在.NET SDK下载 .NET页面点击“不再支持的版本”选择相应的历史版本下载
2.配置dotnet
用文本编辑器打开位于/home/mydemopc (mydemopc 为本地自定义登录账号名称,具体路径个人会有不同)下的 .bashrc 文件
将如下命令添加到 .bashrc 文件中,其中/data/dotnet-sdk-8.0.410-linux-arm64为
export DOTNET_ROOT=/data/dotnet-sdk-8.0.410-linux-arm64
export PATH=$PATH:/data/dotnet-sdk-8.0.410-linux-arm64
添加完的 .bashrc 文件如下所示,修改完成后保存该文件
如需该设置立即生效,可在麒麟系统的“终端”工具中输入如下命令
source ~/.bashrc
如果没有其他情况,在麒麟系统的“终端”工具中输入如下命令
which dotnet
来验证是否配置好dotnet
如本文验证结果如下
mydemopc@mydemo:~$ which dotnet
/data/dotnet-sdk-8.0.410-linux-arm64/dotnet
二、使用dotnet
在麒麟系统中,dotnet有其可供使用的特定的模板方式,我们可通过在“终端”工具中输入如下命令来查看相关可用模板
dotnet new list
一般而言,麒麟系统中dotnet可用模板如下所示
为演示需要,首先,我们在“终端”工具通过dotnet相关模板指令先建立一个控制台程序
mydemopc@mydemo:/data/project$ dotnet new console -o mytest欢迎使用 .NET 8.0!
---------------------
SDK 版本: 8.0.410遥测
---------
.NET 工具会收集用法数据,帮助我们改善你的体验。它由 Microsoft 收集并与社区共享。你可通过使用喜欢的 shell 将 DOTNET_CLI_TELEMETRY_OPTOUT 环境变量设置为 "1" 或 "true" 来选择退出遥测。阅读有关 .NET CLI 工具遥测的更多信息: https://aka.ms/dotnet-cli-telemetry----------------
已安装 ASP.NET Core HTTPS 开发证书。
若要信任该证书,请查看说明: https://aka.ms/dotnet-https-linux----------------
编写第一个应用: https://aka.ms/dotnet-hello-world
了解新增功能: https://aka.ms/dotnet-whats-new
浏览文档: https://aka.ms/dotnet-docs
报告问题并在 GitHub 上查找来源: https://github.com/dotnet/core
使用 "dotnet --help" 查看可用命令或访问: https://aka.ms/dotnet-cli
--------------------------------------------------------------------------------------
已成功创建模板“控制台应用”。正在处理创建后操作...
正在还原 /data/project/mytest/mytest.csproj:正在确定要还原的项目…已还原 /data/project/mytest/mytest.csproj (用时 101 毫秒)。
已成功还原。
创建完成后,我们在“终端”工具进入对应的文件夹,运行dotnet相应指令来查看控制台的运行情况,如下所示
mydemopc@mydemo:/data/project$ cd mytest
mydemopc@mydemo:/data/project/mytest$ dotnet run
Hello, World!
其次,我们在“终端”工具通过dotnet相关模板指令先建立一个web程序
mydemopc@mydemo:/data/project$ dotnet new web -o mywebtest
已成功创建模板“ASP.NET Core 空”。正在处理创建后操作...
正在还原 /data/project/mywebtest/mywebtest.csproj:正在确定要还原的项目…已还原 /data/project/mywebtest/mywebtest.csproj (用时 121 毫秒)。
已成功还原。
创建完成后,我们在“终端”工具进入对应的文件夹,运行dotnet相应指令来查看控制台的运行情况,如下所示
mydemopc@mydemo:/data/project/mywebtest$ dotnet run
正在生成...
info: Microsoft.Hosting.Lifetime[14]Now listening on: http://localhost:5171
info: Microsoft.Hosting.Lifetime[0]Application started. Press Ctrl+C to shut down.
info: Microsoft.Hosting.Lifetime[0]Hosting environment: Development
info: Microsoft.Hosting.Lifetime[0]Content root path: /data/project/mywebtest
根据运行结果,我们打开在浏览器中打开url“http://localhost:5171”,会展示如下结果
三、其他说明
根据一些资料介绍,可通过在“终端”工具输入如下命令,来达到安装dotnet 的目的
wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update
sudo apt-get install -y dotnet-sdk-6.0
经过验证,我发现好像不可行,以下是我的运行脚本情况
mydemopc@mydemo:/data/test$ sudo dpkg -i packages-microsoft-prod.deb
=== 生物识别认证 ===
按Q或者Esc取消
设备空闲
请按压你的手指
识别特征匹配
=== 认证成功 ===
(正在读取数据库 ... 系统当前共安装有 197773 个文件和目录。)
准备解压 packages-microsoft-prod.deb ...
正在解压 packages-microsoft-prod (1.0-ubuntu20.04.1) 并覆盖 (1.0-ubuntu18.04.2) ...
正在设置 packages-microsoft-prod (1.0-ubuntu20.04.1) ...
正在安装新版本配置文件 /etc/apt/sources.list.d/microsoft-prod.list ...mydemopc@mydemo:/data/test$ sudo apt-get update
命中:1 https://archive.kylinos.cn/kylin/KYLIN-ALL 10.1-wayland-2203-updates InRelease
命中:2 https://archive2.kylinos.cn/deb/kylin/production/PART-10_1-kirin9a0/custom/partner/10_1-kirin9a0 default InRelease
命中:3 https://archive.kylinos.cn/kylin/KYLIN-ALL 10.1-kirin9006C-feature InRelease
获取:4 https://packages.microsoft.com/ubuntu/20.04/prod focal InRelease [3,632 B]
获取:5 https://packages.microsoft.com/repos/code stable InRelease [3,590 B]
获取:6 https://packages.microsoft.com/ubuntu/20.04/prod focal/main amd64 Packages [354 kB]
获取:7 https://packages.microsoft.com/ubuntu/20.04/prod focal/main armhf Packages [26.2 kB]
获取:8 https://packages.microsoft.com/ubuntu/20.04/prod focal/main arm64 Packages [80.5 kB]
获取:9 https://packages.microsoft.com/ubuntu/20.04/prod focal/main all Packages [2,938 B]
获取:10 https://packages.microsoft.com/repos/code stable/main arm64 Packages [19.3 kB]
获取:11 https://packages.microsoft.com/repos/code stable/main armhf Packages [19.4 kB]
获取:12 https://packages.microsoft.com/repos/code stable/main amd64 Packages [19.2 kB]
已下载 528 kB,耗时 2秒 (270 kB/s)
正在读取软件包列表... 完成
mydemopc@mydemo:/data/test$ sudo apt-get install -y dotnet-sdk-6.0
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
E: 无法定位软件包 dotnet-sdk-6.0
E: 无法按照 glob ‘dotnet-sdk-6.0’ 找到任何软件包
E: 无法按照正则表达式 dotnet-sdk-6.0 找到任何软件包
mydemopc@mydemo:/data/test$ sudo apt-get install dotnet-sdk-8.0
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
E: 无法定位软件包 dotnet-sdk-8.0
E: 无法按照 glob ‘dotnet-sdk-8.0’ 找到任何软件包
E: 无法按照正则表达式 dotnet-sdk-8.0 找到任何软件包
总结
本文介绍了如何获取在麒麟系统中能够使用的dotnet的安装包信息,并讲述了如何配置,本文还讲述了在麒麟系统中的dotnet可支持的模板情况,并以示例演示了在麒麟系统中创建dotnet控制台程序与dotnetWEB程序,最后本文介绍了相关脚本的验证情况。