把.Net開發環境遷移到Linux上去

.Net Core發佈以前,多年來,.Net程序員的開發環境都在Windows上。程序員

三街第一帥的我,雖然上班的8小時一直在windows上擼C#,可是下班時間通常都在搞其餘的亂七八糟的東西,好比寫寫小遊戲啊。寫點安卓或者IOS的APP啊。ubuntu

本着一顆折騰的心。週末在家開始了再Ubuntu上搭建.Net Core的開發環境c#

想要搬移到ubuntu上去,通常常規是兩種方法windows

1.使用jetbrains家族的.Net定製開發環境Rider。

Rider是一個跨平臺的.Net集成開發環境,支持windows Linux macOS,基本上能夠作到開箱即用。我在windows上使用發現了很多小問題。瀏覽器

Rider有兩個很是不友好的地方mvc

  1. 第一點就是收費。
  2. 太消耗硬件資源了,這也是jb家的ide的通病。固然大部分大佬都是四核16G+幾百G的固態硬盤,跑Rider仍是輕鬆加愉快。

對於新上手一個環境來講,還算是選擇一個從0配置的方案比較好。也就是今天要介紹的vscode了dom

2.使用vscode+dotnet sdk本身動手搭建一個環境

環境準備:ubuntu 1604+vscode最新版 + dotnet sdk 2.2編輯器

1.安裝.Net core的sdk

安裝.Net core的sdk須要註冊微軟的密鑰和源ide

wget -q https://packages.microsoft.com/config/ubuntu/16.04/packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb

而後就是安裝.Net core的sdk測試

sudo apt-get install apt-transport-https
sudo apt-get update sudo apt-get install dotnet-sdk-2.2

安裝成功後,在Terminal中輸入dotnet 

出現上面這樣的,差很少就算成功了.

2.安裝VScode

直接去https://code.visualstudio.com/下載一個xxxx.ded的包,而後直接雙擊打開,會提示註冊一個ubuntu商店的帳號,隨便填寫一個郵箱就行了,而後就安裝好了。

在ubuntu的seach you computer中搜索vscode

就會出現vscode的圖標,把這個圖標拖到任務欄上,就能夠固定

 

若是走到這一步,基本的環境算是搭建好了。可是我們怎麼也得跑一個Hello world再說啊

3.開始咱們的Hello world

新建一個文件夾Host

而後執行命令

 

dotnet new mvc -n helloworld --no-https

這句cli命令的意思就是新建一個mvc的項目模板,名字叫helloworld 而後不啓用https

而後進入到helloworld目錄下dotnet run,就能夠跑起來了

在瀏覽器中輸入localhost:5000

就能夠正常的訪問到咱們的helloworld了。。

 

已經跑起了helloworld了,可是好像沒有用到vscode啊?

不要慌,立刻就用到了。用vscode打開這個helloworld的文件夾

正常狀況下,vscode會提示你安裝 這個c#的插件。順手點擊裝上吧

 

而後點擊vscode的debug

會自動生成調試配置文件。再次點擊debug,vscode輸出一大堆的屎黃色的load信息以後,就會彈出瀏覽器。

若是你加了斷點,vscode就會自動進入斷點調試

,在vscode的界面上能夠很方便的看到各類須要看到的調試信息。雖然vscode本身官宣定位編輯器。

可是功能強的簡直是砸各類IDE的飯碗啊。。。最主要仍是免費。賊6。


 

雖然本篇文章定位環境搭建。那麼咱們就搭建的完全一點。

常規的開發中,咱們對解決方案進行分層。好比什麼bll啊,dao啊,什麼doman啊,亂七八糟的。那麼在vscode下如何引用類庫呢?

答案也是很是簡單的。

一樣在host目錄下打開Terminal。而後輸入

dotnet new classlib -n helloworld 

而後再host目錄下就出現了兩個文件夾,分別爲helloworld和helloworld.lib

這時候就能夠直接用vscode打開host文件夾,在Exploere視圖下。點開helloworl.csproj文件,新加入一個ItemGroup的節點

<ItemGroup>

    <ProjectReference Include="..\helloworld.lib\helloworld.lib.csproj" />

  </ItemGroup>

這樣就成功引用了。固然也能夠使用dotnet cli來引用,Terminal中輸入

dotnet add reference ../helloworld.lib/helloworld.lib.csproj

就能夠自動幫你加入了上面的ItemGroup節點了。

測試一下。在helloworld.lib類庫的Class1裏面加入一個方法SayHello

  public string SayHello(){

            return "Hello World!"; }

而後打開HomeController.cs

 

在視圖裏面弄個h1標籤顯示viewbag,點擊運行

差很少到這裏就結束了,vscode裏面的不少插件能夠幫助你簡化不少問題。只有本身去發現了。

.Net開發環境在Linux上仍有不少小問題須要去克服,不過隨着.net生態的發展,這些都不是問題。不過這些須要各位.Neter的共同努力。

相關文章
相關標籤/搜索