引言
Deepin是基于Debian开发的,由于之前在我的台式上安装了Deepin和Windows双系统后,在体验不错之后又在自己的笔记本装上了,流畅度很好,所以准备尝试使用Deepin来作为我的个人开发环境,我主要从事Web端的开发,而后端语言主要采用C#.Net Core,今天就记一次从安装到在Deepin上编写第一个C#程序,并运行它。

如何安装
安装.net core的方式在这里提供两种,大家可以根据自己的选择来进行安装,先给出地址
/download/dotnet-core/2.2
- 包管理安装(命令行的方式)
wget -qO- https:///keys/ | gpg --dearmor > mv /etc/apt//wget -q https:///config/debian/9/ mv /etc/apt/sources./ chown root:root /etc/apt// chown root:root /etc/apt/sources./ apt-get install apt-transport-httpssudo apt-get updatesudo apt-get install dotnet-sdk-2.2
这里我并不推荐采用这种方式安装,因为实在是太慢了,当然也可能是我网络的原因,你也可以尝试下,直接在终端执行以上两段代码即可,没错,复制第一段然后复制第二段即可。由于我安装太慢,放弃了这种方式。
- 使用官网提供的二进制文件安装
1、我们打开上面的地址,然后选择以下截图所示的二进制压缩包,点击进行下载,存放到你想存放的位置,其实没必要,安装完删除即可

2、然后我们通过Deepin自带的终端进入到刚刚下载好的文件路径下,对命令不熟的可以直接在目录下右击唤醒终端。

3、然后输入以下命令,也是直接输入以下命令,然后回车即可,很快就会完成
mkdir -p $HOME/dotnet && tar zxf dotnet-sdk-2.2. -C $HOME/dotnetexport DOTNET_ROOT=$HOME/dotnetexport PATH=$PATH:$HOME/dotnet
4、完成后我们检查一下版本号,来看下是否安装成功

5、实际上并没有安装完成,这只是在当前目录下能够运行,我们需要将它添加到系统的环境变量中,Deepin的系统环境变量文件在/etc/profile,有两种方式,一种是在命令行下操作:
命令行下:
首先备份一份出来,毕竟是系统文件
cp /etc/profile /etc/
然后使用vim进行编辑
sudo vim /etc/profile
我对vim是真的不熟,但是这个地方比较简单,首先按i键进入编辑状态,然后光标移到最后一行,将下面两个命令添加进去
export PATH=$PATH:$HOME/dotnetexport DOTNET_ROOT=$HOME/dotnet

然后按esc,再输入:wq保存退出,之后输入下面命令让它生效
source /etc/profile
在之后关闭当前终端重新打开,输入dotnet --version就已经成功看到版本号了
这个地方注意:我在测试的时候发现,环境变量似乎还是没有生效,然后重启电脑后就可以了,如果遇到和我一样的问题,可以重启电脑试试。
手动更改:
这个方式比较暴力,直接管理员进入到/etc目录下,打开profile文件,将上面两个命令添加到末尾保存,然后同样在终端执行以上命令使它生效。这个方法比较适合对linux不熟悉的用户。

开发工具+测试+发布
这里有两个选择,一种是使用VSCode开发,但是我是个懒人,不想麻烦配置那么多,因此我选择了跨平台的作为开发工具,他也是,我们一起来尝试下吧:
/rider/
下载完成后,解压到你想放的文件夹,打开里面的或者在终端打开都可以,打开后可以直接到启动栏找打的图标,最好是打开第一次后关掉,然后直接到启动栏打开,不然得重新配置一次。

打开后我们创建一个.net core api项目测试下

创建成功后,如下进行操作,首先新建一个用户类,然后在控制器模拟出数据


现在我们来运行测试下结果,这两个按钮分别是运行和调试,我们直接点击运行

这时候我们发现报错了,是https导致的,那我们把启动项中的https取消掉

然后在运行我们发现成功了,如下图

到现在整个开发环境就搭建好了,如果你想发布的话你只需要右键点击你的项目,然后publish

由于.net core是跨平台的,所以你可以发布成你想要的平台对应的文件

然后打开发布的目录运行

然后打开浏览器http://localhost:5000/api/values即可看到和刚刚测试一样的效果,至此整个开发到发布.net core的环境就搭建好了。
总结
整个搭建过程比较简单,而且搭建完成后和在winddows上体验差不多,开发工具也很强大,而且编译速度感觉比Windows还快,可能是错觉吧,今天的介绍就到这里,希望通过本文的介绍,让你也能够对你有所帮助,感谢支持!
