1. 程式人生 > >.Net Core實踐1

.Net Core實踐1

dot 使用 希望 平臺 操作 控制 測試 idt 所在

實踐目標

編寫經典的hello world程序.使用.netcore框架,然後運行在linux上.

.netcore目前已經是2.1版本了,可以簡單的認為是一種跨平臺的.net framework,除了MS系統,還能運行在linux mac os.很多年以前,已經有一個體系天生跨平臺,就是JAVA.,dotnet體系生態無法與java競爭.

2004年7月發布的mono項目是.net的一種跨平臺實現, 做成了能在linux上運行的.net framework,還部分實現了ADO.NET ASP.NET等工具.使用C#開發的程序,終於可以跑在linux上了.當然,前提API能實現.

看過一些介紹.netcore的文章,看完後還是雲裏霧裏,目前就這樣理解了.它就是一種.net在linux和其它OS上的重新發明.

基礎環境

這個hello world,運行環境如下

WIN10 / vs2017 / .netcore2.1 / centos7 16.11 (運行在VM12.57)

需要一些Linux基本操作知識.類似ms的cmd,linux系統是主要用命令行交互.比如新建文件/文件夾,進入文件夾,運行文件,查看系統信息等等.不像MS有易於操作的圖形界面.會一些linux命令,並不意味著能玩轉linux.

#[mkdir] 建立文件夾

#[tar] 解壓縮用

#[In] 建立鏈接文件,這如同ms系統中的"快捷方式",就是一個指向運行文件的引用

#[echo $PATH] 顯示環境變量.和MS一樣,在cmd中執行一個程序時,如果這個程序所在目錄不在環境變量中,那麽提示找不到 程序.除非到這個程序的目錄下執行.

#[可執行程序] 運行可執行程序.如果希望在任何目錄下都能執行,可將其目錄加到環境變量,或者在已經有環境變量目錄下,添加一個到該程序的"鏈接文件"(快捷方式).

安裝.netcore

和MS系統中一樣,如果要跑C#程序,必須安裝.net framework,並且必須對應好版本.

在linux中裝軟件,可以編譯源碼安裝,也可以安裝編譯好的包.顯然,第1種要求高,安裝編譯好的包要容易一些.

下載.netcore2.14https://github.com/dotnet/core/blob/master/release-notes/2.1/2.1.4/2.1.4-download.md

環境是centos7 所以下載linux X64的這個版本.下載後得到文件 dotnet-sdk-2.1.402-linux-x64.tar.gz

技術分享圖片

將這個文件復制到centos中.目前是從MS系統復制到VM中的centos

技術分享圖片 技術分享圖片

再將其解壓到/usr/dotnet這個目錄下

[root@] mkdir -p /usr/dotnet // 在usr下建立dotnet目錄

[root@] tar zxf dotnet-sdk-2.1.402-linux-x64.tar.gz -C /usr/dotnet // 解壓.netcore到/usr/dotnet目錄下

[root@] ln -s /usr/dotnet/dotnet /usr/local/bin // dotnet是可執行文件,在/usr/local/bin下建立一個到該文件的"快捷方式".這樣,在其它目錄下也能執行dotnet命令了,因為/usr/local/bin已經在環境變量裏了

測試程序

在centos下安裝好了.netcore的SDK之後.就能運行程序了.

在vs2017裏建立一個.netcore控制臺程序,寫在那句經典的 Console.WriteLine("Hello World!"); 這個過程和.netframework時沒有什麽區別.

編譯後在bin裏有這些文件.其中.dll那個文件就是可執行文件

技術分享圖片

將這些文件復制到centos下,然後進入這個目錄,使用dotnet命令執行這個dll

[root@] dotnet ConsoleApp1.dll

技術分享圖片

Hello World!打印出來.運行成功了.

就這樣,在MS下開發的.C#程序,可以運行在linux下了.

.Net Core實踐1