對於.NET開源計劃想必關注的人已經躍躍欲試了,但是真正將其用於開發的目前來說不多。畢竟截至本文發布時.NET Core才發布到1.0RC2版本。正式版預計還有一段時間。況且大多數人都是持觀望態度,就算開發仍然用的還是.NET Framework。另外不得不說的一點就是.NET開源的進度很驚人但是社區建設還有待提升,很多配套的東西還不齊全。Java在語言層級上可能落後.NET但是Java的社區力量是.NET遠不及的。
一、安裝SDK
.NET Core發布版:https://www.microsoft.com/net/core
.NET Core提供了核心的運行組件,要用到的模塊都是通過NuGet方式來獲取的。開發可以完全不依賴於.NET Framework和平台。但是.NET Core的功能沒有.NET Framework那麼全。Web領域的WebForm已經被捨棄了。WinForm目前也不再開源計劃內。想用的還是慎重些,畢竟這只是一個開始。
1.windows平台安裝SDK
直接下載並安裝即可。https://go.microsoft.com/fwlink/?LinkID=798398
2.Linux平台安裝SDK(測試系統為:Ubuntu 14)
官方指導手冊:https://www.microsoft.com/net/core#ubuntu
sudo sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet/ trusty main" > /etc/apt/sources.list.d/dotnetdev.list' sudo apt-key adv --keyserver apt-mo.trafficmanager.net --recv-keys 417A0893 sudo apt-get update sudo apt-get install dotnet-dev-1.0.0-preview1-002702
主要有幾個注意的點:
Ubuntu 16在測試時使用apt-get安裝不成功。目前只在Ubuntu14測試成功。
直接使用:apt-get install dotnet 獲取到的版本不清楚,看安裝之後的版本號貌似是最新的,但是創建出來的項目又不是最新的。所以安裝時還是按照官方給的方式指明版本號。
3.安裝完成進行環境測試
使用指令:
復制代碼 代碼如下:dotnet --info
測試結果如下:
C:\>dotnet --info .NET Command Line Tools (1.0.0-preview1-002702) Product Information: Version: 1.0.0-preview1-002702 Commit Sha: 6cde21225e Runtime Environment: OS Name: Windows OS Version: 10.0.10586 OS Platform: Windows RID: win10-x64
yoli@ubuntu:~$ dotnet --info .NET Command Line Tools (1.0.0-preview1-002702) Product Information: Version: 1.0.0-preview1-002702 Commit Sha: 6cde21225e Runtime Environment: OS Name: ubuntu OS Version: 14.04 OS Platform: Linux RID: ubuntu.14.04-x64
二、創建HelloWord程序
1.創建控制台項目:
mkdir hwapp cd hwapp dotnet new
使用的dotnet new指令來快速創建項目。
dotnet new –t Console 創建控制台項目。目前項目類型只能創建控制台項目,沒有其它可選類型,希望後期可以創建更多項目模板。
dotnet new –l C# 使用C#語言創建項目。目前只支持C#和F#。
編譯並運行項目:
復制代碼 代碼如下:dotnet restore
dotnet run
使用dotnet resotre來還原包引用
使用dotnet run運行程序
使用dotnet build編譯代碼
使用dotnet publish 發布項目
詳細指令參數請查看指令的幫助說明。
2.創建Web項目
由於創建指令並不支持創建Web項目,所以不能直接使用創建指令來創建,當然可以使用手工方式創建project.json來創建項目,這樣做並不明智。可以借助於一些工具和模板來快速創建項目。
可用的模板案例:https://github.com/aspnet/cli-samples
可以直接使用Git工具復制到本地使用。
另外需要注意的:
dnx的啟動方式目前在新版本中已經不使用了,全部改為dotnet指令。Web項目啟動方式和Console項目的啟動方式一樣。
Linux運行效果如下:
三、使用編輯器
引用官方的宣傳標語:
It is very easy to get started with .NET Core on your platform of choice.You just need a shell, a text editor and 10 minutes of your time.
感覺形容的很貼切,但是估計會有一大堆人蒙逼了。VS都不用了還怎麼開發?官方說只需一個文本編輯器即可,放著如此強大的VS不用改用文本編輯器開發,開發者會接受嗎?就我而言願意改變的只是很少一部分人。畢竟絕大多數還是在Windows平台上開發,最終還是選擇還是用windows+VS開發,發布時可能選擇其它平台來發布。這對於其它平台工具鏈的形成是十分不利的。
1.安裝VSCode
下載並安裝VSCode:https://www.visualstudio.com/en-us/products/code-vs.aspx
安裝C#開發支持插件
打開VSCode使用Ctrl+P調出指令欄,輸入安裝指令:
復制代碼 代碼如下:ext install csharp
插件官網:https://marketplace.visualstudio.com/items?itemName=ms-vscode.csharp
安裝完成,會提示重啟VSCode,重啟之後即可進行開發了。
2.使用VSCode編譯運行項目
使用VSCode打開創建好的項目文件夾即可。默認項目沒有.vscode文件夾,打開之後會在上方的消息欄提示,點擊確定之後就會自動創建.vscode文件夾了。
該文件夾下包含:
launch.json
和tasks.json
兩個文件,用來配置調試器和調試指令用的。
打開代碼文件會發現代碼會有很多異常信息,一般都是引用的包沒有加載,可以使用restore指令來還原或者等VSCode加載完成即可,可能會在通知欄提示還原包。
調試運行使用F5即可。C#調試插件提供了以下幾種方式啟動調試,使用Web啟動會默認會自動打開浏覽器。斷點調試單步跟蹤基本差別不是很大,日常開發足夠用。
運行效果如圖:
需要注意的問題:
(1)如果跳過了添加調試器的步驟,有可能編譯時報錯。只需要launch.json修改對應的參數即可。如:
(2)Troubleshooting 'Error while installing .NET Core Debugger'
如果有上述提示,請使用dotnet --info 看能否輸出正常信息,如果不行,請重新安裝.NET Core SDK的支持版本。如果提示restore失敗,請檢查網絡連接。
(3)Windows平台上,如果提示找不到Symbols,則啟用Portable PDBs
打開project.json找到buildOptions,將debugType修改為portable,如果找不到buildOptions選項,在老版本中名稱叫:compilationOptions
結束語:此次.NET的開源與其說是微軟的仁慈倒不如說是一種無奈。另外VSCode在文本編輯以及多項目管理等諸多方面還有很大的提升空間。社區的建設還有很多的空白地方希望能夠盡快補充上來。每次看文檔資料看到In the future、hasn't been written yet等詞時總是一種莫名的失落感。