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

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

做者:依樂祝
原文地址:http://www.javashuo.com/article/p-gnkizpxr-kb.htmlhtml

在本文中,我將帶着你們一步一步的經過圖文的形式來演示如何在Visual Studio Code中進行.NET Core程序的開發,測試以及調試。儘管Visual Studio Code的部分功能還達不到Visual Studio的水平,但它實際上已經足夠強大來知足咱們的平常開發。並且其輕量化,插件化以及跨平臺的特性則是VS所不具有的。並且Visual Studio Code還能夠經過社區來建立一系列的擴展來加強其功能,且社區已經足夠活躍。咱們能夠期待更多很酷的擴展和功能來加強VS Code,這將使在這個輕量級,跨平臺編輯器中的開發.NET Core應用程序更加流暢和有趣。趕忙跟着博主一塊兒開始今天的文章吧!python

爲何要寫這篇文章?

由於上篇文章也說了,.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的開發json

準備工做

  1. 安裝.NET Core SDK。具體的安裝方式大夥能夠點擊這裏進行查看並進行安裝。由於微軟的東西都比較傻瓜式,因此這裏就不演示了。c#

  2. 安裝Visual Studio Code。您能夠從此處 而後根據您的操做系統進行選擇下載,不一樣操做系統的安裝過程可能會有所不一樣 您能夠在此處 查看Visual Studio Code的安裝說明。仍是 由於微軟的東西都比較傻瓜式,因此這裏就不演示了。1541339022729visual-studio-code

  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,並將選定該文件夾做爲工做區。固然也能夠經過下圖所示的步驟來打開這個文件夾,這個按照你的習慣來操做就好。1541340456205ide

  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/

相關文章
相關標籤/搜索