1. 程式人生 > >使用Visual Studio Code開發.NET Core看這篇就夠了

使用Visual Studio Code開發.NET Core看這篇就夠了

原文: 使用Visual Studio Code開發.NET Core看這篇就夠了

作者:依樂祝
原文地址:https://www.cnblogs.com/yilezhu/p/9926078.html

在本文中,我將帶著大家一步一步的通過圖文的形式來演示如何在Visual Studio Code中進行.NET Core程式的開發,測試以及除錯。儘管Visual Studio Code的部分功能還達不到Visual Studio的水平,但它實際上已經足夠強大來滿足我們的日常開發。而且其輕量化,外掛化以及跨平臺的特性則是VS所不具備的。而且Visual Studio Code還可以通過社群來建立一系列的擴充套件來增強其功能,且社群已經足夠活躍。我們可以期待更多很酷的擴充套件和功能來增強VS Code,這將使在這個輕量級,跨平臺編輯器中的開發.NET Core應用程式更加流暢和有趣。趕緊跟著博主一起開始今天的文章吧!

為什麼要寫這篇文章?

因為上篇文章也說了,.NET Core已經全面跨平臺了,而且我們也在嘗試使用Linux了,但是上篇CentOS開發ASP.NET Core入門教程 中使用的CLI進行.NET Core開發的話,感覺很不適應。畢竟從.net過度過來的我們已經習慣了使用Microsoft的Visual Studio進行開發。那麼有沒有一款媲美Visual Studio的開發工具可以讓我們能夠在Linux系統上進行高效的.NET Core開發呢?答案是肯定的,因為微軟已經開發了一個名為Visual Studio Code的跨平臺和開源的文字編輯器。Visual Studio Code是如此強大和令人驚歎,因為它提供了內建的智慧提醒,除錯功能和Git支援。而且Visual Studio Code提供了強大的外掛擴充套件功能。使得你可以在外掛擴充套件庫裡面找到滿足你需求的外掛。如果你沒有在他們的擴充套件庫中找到它,那麼你還可以自己建立一個外掛並使用它。很酷,對嗎?那就開始吧!

安裝

這部分,我們將講解如何進行Visual Studio Code的安裝,配置以便進行.NET Core的開發

準備工作

  1. 安裝.NET Core SDK。具體的安裝方式大夥可以點選這裡進行檢視並進行安裝。因為微軟的東西都比較傻瓜式,所以這裡就不演示了。

  2. 安裝Visual Studio Code。您可以從此處 然後根據您的作業系統進行選擇下載,不同作業系統的安裝過程可能會有所不同 您可以在此處 檢視Visual Studio Code的安裝說明。還是 因為微軟的東西都比較傻瓜式,所以這裡就不演示了。1541339022729

  3. 在Visual Studio Code 中安裝C# 擴充套件以便讓Visual Studio Code 支援C#的開發,當然你也可以安裝其他語言的擴充套件來進行其他程式語言的開發,比如說python,go等等。為了安裝c#的擴充套件,你可以通過Visual Studio Code左側工具欄中的Extensions圖示或使用鍵盤快捷鍵Ctrl + Shift + X開啟Extensions檢視。在搜尋框中搜索C#並從列表中安裝擴充套件程式。如下圖所示: 1541339435927

    這裡需要注意下,安裝完成之後,需要重啟下Visual Studio Code才能夠使用C#擴充套件功能。1541339538011
    重啟之後會出現如下的介面,表示已經安裝好了C#擴充套件1541339685496

    使用Visual Studio Code開發基本的.NET Core程式

    既然環境都已經準備好了,那麼現在我們就開始使用Visual Studio Code開發一個.NET Core應用程式吧!
  4. 在電腦上一個位置建立一個名為DotNetCoreSample的空資料夾,然後右鍵單擊該資料夾,從彈出的選單中選擇“使用Visual Studio Code開啟”。這將開啟Visual Studio Code,並將選定該資料夾作為工作區。當然也可以通過下圖所示的步驟來開啟這個資料夾,這個按照你的習慣來操作就好。1541340456205

  5. 使用`Ctrl+Shift+`` 快捷鍵在 Visual Studio Code 中快速開啟終端,如下圖所示:

    1541590018735

  6. 接下來我們使用dotnet new console --name DotNetCoreSample 命令來在這個開啟的終端裡面建立一個基礎的控制檯程式並進行restore。如下圖所示

    1541590248007

  7. 接下來我們開啟生成的Program.cs 檔案,Visual Studio Code會安裝OmniSharp外掛,然後會在右下角彈出如下圖所示的是否需要生成用來構建以及除錯的資產檔案的詢問視窗,這裡點選“是”就會幫我們生成“launch.json”以及“task.json”檔案,這些檔案將有助於使用Visual Studio程式碼構建和除錯應用程式 。

    1541590405069

    1541590667259

  8. 下面我們修改下Program.cs 檔案中的內容,新增下面這行程式碼。然後儲存檔案,並把滑鼠移動到終端,然後終端cd到我們的專案目錄cd DotNetCoreSample。輸入dotnet run 然後按下Enter鍵,可以看到如下所示的內容:

    1541591036238

Visual Studio Code中vscode-solution-explorer解決方案管理器外掛的使用

可能很多.neter朋友們剛開始使用Visual Studio Code的時候很不適應各種命令列dotnet命令來建立專案以及解決方案。幸運的是,Visual Studio Code擴充套件中提供了類似於Visual Studio的解決防範資源管理的外掛來解決這個問題。下面我們一步一步的看下如何使用此外掛吧!

  1. 開啟Visual Studio Code擴充套件,然後輸入vscode-solution-explorer,然後如下圖所示進行安裝。

    1541591973934

  2. 安裝後外掛後,VS Code Explorer左側欄中將多了一個顯示名為“SOLUTION EXPLORER”的新窗格。

    1541592290514

  3. 接下來我們使用它來建立解決方案,並在解決方案中新增專案吧。我們按下快捷鍵Ctrl + Shift + P

    然後選擇“Create a new empty solution ” VS Code 將提示我們輸入一個解決方案的名稱。我們輸入一個SimpleCalculator 作為解決方案的名稱。

    1541592847941

  4. 現在,VS Code將使用我們提供的名稱建立一個空的解決方案。在後臺,我們安裝的擴充套件將執行dotnet new sln  命令。您可以在“SOLUTION EXPLORER”窗格中看到空白解解決方案。然後此擴充套件程式將詢問你是否建立模板資料夾請參見下圖。如果允許,它將在.vscode / solution-explorer 目錄中新增一些模板。

    1541593203311

  5. 現在,讓我們向這個空白的解決方案中新增類庫和控制檯應用程式。右鍵單擊解決方案(在Solution Explorer窗格中),然後從上下文選單中選擇Add new project選項。這將列出.NET CLI提供的可用專案型別(請參見下圖)。選擇“類庫”選項。

    1541593412253

    1541593430198

  6. 系統將詢問您將使用哪種語言。選擇C#,編輯器將提示輸入專案名稱。 像我們之前給出的那樣給出MathOperations的名稱。類庫已新增到解決方案中。

  7. 重複相同的步驟並新增名為“Calculator ”的控制檯應用程式。請記住從專案模板中選擇控制檯應用程式。

  8. 現在我們需要在控制檯應用程式中新增類庫專案的引用。右鍵單擊控制檯應用程式專案,然後從上下文選單中選擇“新增引用”選項。由於解決方案中只有兩個專案,擴充套件程式將自動新增另一個專案的引用。如果有兩個以上的專案,我們需要從列表中選擇專案。

    1541593786278

  9. 導航到類庫目錄MathOperations。將Class1.cs  類檔案重新命名為MathOperations.cs。在類中新增一個兩個數字的簡單簡單加法的方法,程式碼如下:

        public static class MathOperation    
        {    
            public static int Add(int num1, int num2) => num1 + num2;
        }  
  10. 修改導航到Calculator控制檯程式並在Program.cs檔案中使用類庫中的方法。這裡大家可以使用Shift + Alt + F快捷鍵格式化程式碼。如下所示:

    static void Main(string[] args)
            {
                int num1 = 10;
                int num2 = 20;
                int sum = MathOperation.Add(num1, num2); // Method from class library    
                Console.WriteLine($"{num1} + {num2} = {sum}");
                Console.ReadLine();
            }
  11. 現在,右鍵單擊解決方案資源管理器樹中的控制檯應用程式專案,然後從上下文選單中選擇“執行”選項。您可以看到.NET CLI將在後臺執行應用程式。並在Output視窗中輸出結果,如下圖所示。

    1541594980618

    1541594999015

Visual Studio Code在.NET Core應用程式中執行測試外掛

單元測試是軟體開發不可或缺的一部分。這裡我不打算詳細解釋單元測試,因為有很多線上資源。我只給大家介紹如何在.NET Core應用程式中包含單元測試以及可用於執行單元測試的Visual Studio Code的擴充套件。

  1. 首先讓我們該寫下數學運算的類庫方法
 public static class MathOperation
    {
        public static int Add(int num1, int num2) => num1 + num2;
        public static int Subtract(int num1, int num2) => num1 - num2;

        public static int Multiply(int num1, int num2) => num1 * num2;

        public static int Divide(int num1, int num2) => num1 / num2;
    }
  1. 現在,我們需要在解決方案中新增一個單元測試專案。

我們可以使用.NET CLI或上面提到的Solution Explorer擴充套件來新增單元測試專案。要通過Solution Explorer擴充套件新增專案,請右鍵單擊解決方案,然後 從上下文選單中選擇“ 新增新專案 ”。從專案模板中選擇xUnit Test Project 並命名為 MathOperationTests。建立測試專案後,將MathOperations類庫的引用新增到測試專案中。

如果您使用的是.NET CLI,則需要執行以下命令。

dotnet new xunit -n MathOperationTests  
dotnet add MathOperationTests\MathOperationTests.csproj reference MathOperations\MathOperations.csproj  
dotnet sln SimpleCalculator.sln add MathOperationTests\MathOperationTests.csproj
  1. UnitTest1.cs重新命名為OperationTests.cs。也要在程式碼中更改類名。現在我們將為類庫方法新增一些測試。

    public class OperationTests
        {
            [Fact]
            public void AddTwoNumbers_ReturnsSum()
            {
                var num1 = 10;
                var num2 = 20;
                var result = MathOperation.Add(num1, num2);
                Assert.Equal(30, result);
            }
    
            [Fact]
            public void SubtractTwoNumbers_ReturnsDifference()
            {
                var num1 = 20;
                var num2 = 10;
                var result = MathOperation.Subtract(num1, num2);
                Assert.Equal(10, result);
            }
    
            [Fact]
            public void MultiplyTwoNumbers_ReturnsProduct()
            {
                var num1 = 10;
                var num2 = 20;
                var result = MathOperation.Multiply(num1, num2);
                Assert.Equal(200, result);
            }
    
            [Fact]
            public void DivideTwoNumbers_ReturnsQuotient()
            {
                var num1 = 20;
                var num2 = 10;
                var result = MathOperation.Divide(num1, num2);
                Assert.Equal(2, result);
            }
        }
  2. 現在,我們需要執行我們建立的測試。我們為此使用.NET CLI。開啟終端。導航到MathOperationTests目錄。輸入dotnet test命令。我們將獲得以下輸出。

    1541596760373

  3. 如您所見,輸出資訊量較少。如果我們在Visual Studio中有類似於Test Explorer的東西來執行我們的單元測試並檢視結果,那將會很好。好訊息是有一個名為.NET Core Test Explorer的Visual Studio Code外掛。下面按照下圖所示在Visual Studio程式碼中安裝此擴充套件吧。這裡不過多說明了

    1541597219891

  4. 安裝擴充套件程式後,您可以在左側活動欄中看到一個燒杯圖示。單擊該圖示,您將看到測試的側欄面板,其中列出了專案中發現的單元測試。測試專案將顯示在按名稱空間和類分組的樹檢視中。您還可以看到每個測試的“執行”按鈕和頂部的“全部執行”按鈕。單擊Run All按鈕,您可以看到正在執行的所有測試及其結果。

    1541597348658

  5. 我們可以看到所有測試都已通過,並在測試資源管理器窗格中標有綠色勾號。現在讓我們讓測試失敗。我將更改Add方法的邏輯以使測試失敗。

     public static int Add(int num1, int num2) => num1 - num2;//這裡有bug
  6. 現在再次執行測試。我們可以看到我們對Add方法的測試失敗,並在test explorer窗格中用紅色符號標記。

    1541597509689

  7. 如果我們導航到我們編寫的測試方法,我們可以看到它現在在Assert方法中有一個紅色的波浪下劃線。如果我們將滑鼠懸停在該波浪線上,將顯示一個資訊框,顯示測試的實際值和預期值。VS程式碼的底部面板(終端所在的面板)的“ 問題”選項卡中顯示相同的資訊。這可以在下圖中看到。

    1541597599699

  8. 修復錯誤並再次執行測試,以便所有測試都通過,我們可以再次看到綠色標記。

Visual Studio Code中順暢的除錯.NET Core應用程式

在這部分,我們將瞭解如何在Visual Studio Code中順暢的除錯.NET Core應用程式。為了在Visual Studio Code中除錯.NET Core應用程式,我們需要為VS Code安裝C#擴充套件。(上面我們已經安裝過了)

  1. 我們首先在Calculator控制檯程式的Program.cs檔案中加入斷點。與Visual Studio類似,我們可以通過單擊原始碼檔案的左邊距,或者將游標放在一行程式碼上並按F9,在原始碼中設定行斷點。斷點在編輯器的左邊緣顯示為紅點。

  2. 要開始除錯,請按F5。這將自動將偵錯程式附加到我們的Calculator應用程式來啟動應用程式。我們可以看到執行在我們設定的斷點處停止,這有助於我們在除錯時瞭解當前的程式狀態。

    1541598520046

    這裡需要注意下,需要修改launch.json中的對應路徑以及專案名稱為Calculator。

    1541598690693

  3. 我們可以看到VS Code的Debug檢視在編輯器的左側開啟。Debug檢視顯示與除錯相關的所有資訊。我們還可以注意到編輯器頂部出現了一個除錯工具欄。除錯時,除錯工具欄可用於程式碼導航選項。這裡除錯試圖的大部分功能跟vs2017差不多,因此這裡不做過多地闡述了。

總結

在本文中,我已經為大家一步一步的通過圖文教程解釋瞭如何在Visual Studio Code中進行.NET Core程式的開發,測試以及除錯。趕緊下載一個試試吧!你會發現你會越來越喜歡他的!
本文參考:https://www.c-sharpcorner.com/article/create-a-net-core-development-environment-using-visual-studio-code2/