作者:依樂祝 原文地址:https://www.cnblogs.com/yilezhu/p/9926078.html 在本文中,我將帶著大家一步一步的通過圖文的形式來演示如何在Visual Studio Code中進行.NET Core程式的開發,測試以及調試。儘管Visual Studio Cod ...
作者:依樂祝
原文地址: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的開發
準備工作
安裝.NET Core SDK。具體的安裝方式大伙可以點擊這裡進行查看併進行安裝。因為微軟的東西都比較傻瓜式,所以這裡就不演示了。
安裝Visual Studio Code。您可以從此處 然後根據您的操作系統進行選擇下載,不同操作系統的安裝過程可能會有所不同 您可以在此處 查看Visual Studio Code的安裝說明。還是 因為微軟的東西都比較傻瓜式,所以這裡就不演示了。
在Visual Studio Code 中安裝C# 擴展以便讓Visual Studio Code 支持C#的開發,當然你也可以安裝其他語言的擴展來進行其他編程語言的開發,比如說python,go等等。為了安裝c#的擴展,你可以通過Visual Studio Code左側工具欄中的Extensions圖標或使用鍵盤快捷鍵Ctrl + Shift + X打開Extensions視圖。在搜索框中搜索C#並從列表中安裝擴展程式。如下圖所示:
這裡需要註意下,安裝完成之後,需要重啟下Visual Studio Code才能夠使用C#擴展功能。
重啟之後會出現如下的界面,表示已經安裝好了C#擴展使用Visual Studio Code開發基本的.NET Core程式
既然環境都已經準備好了,那麼現在我們就開始使用Visual Studio Code開發一個.NET Core應用程式吧!在電腦上一個位置創建一個名為DotNetCoreSample的空文件夾,然後右鍵單擊該文件夾,從彈出的菜單中選擇“使用Visual Studio Code打開”。這將打開Visual Studio Code,並將選定該文件夾作為工作區。當然也可以通過下圖所示的步驟來打開這個文件夾,這個按照你的習慣來操作就好。
使用`Ctrl+Shift+`` 快捷鍵在 Visual Studio Code 中快速打開終端,如下圖所示:
接下來我們使用
dotnet new console --name DotNetCoreSample
命令來在這個打開的終端裡面創建一個基礎的控制台程式併進行restore。如下圖所示接下來我們打開生成的Program.cs 文件,Visual Studio Code會安裝OmniSharp插件,然後會在右下角彈出如下圖所示的是否需要生成用來構建以及調試的資產文件的詢問視窗,這裡點擊“是”就會幫我們生成“launch.json”以及“task.json”文件,這些文件將有助於使用Visual Studio代碼構建和調試應用程式 。
下麵我們修改下Program.cs 文件中的內容,添加下麵這行代碼。然後保存文件,並把滑鼠移動到終端,然後終端cd到我們的項目目錄
cd DotNetCoreSample
。輸入dotnet run
然後按下Enter鍵,可以看到如下所示的內容:
Visual Studio Code中vscode-solution-explorer解決方案管理器插件的使用
可能很多.neter朋友們剛開始使用Visual Studio Code的時候很不適應各種命令行dotnet命令來創建項目以及解決方案。幸運的是,Visual Studio Code擴展中提供了類似於Visual Studio的解決防範資源管理的插件來解決這個問題。下麵我們一步一步的看下如何使用此插件吧!
打開Visual Studio Code擴展,然後輸入vscode-solution-explorer,然後如下圖所示進行安裝。
安裝後插件後,VS Code Explorer左側欄中將多了一個顯示名為“SOLUTION EXPLORER”的新窗格。
接下來我們使用它來創建解決方案,併在解決方案中添加項目吧。我們按下快捷鍵Ctrl + Shift + P
然後選擇“Create a new empty solution ” VS Code 將提示我們輸入一個解決方案的名稱。我們輸入一個SimpleCalculator 作為解決方案的名稱。
現在,VS Code將使用我們提供的名稱創建一個空的解決方案。在後臺,我們安裝的擴展將執行dotnet new sln 命令。您可以在“SOLUTION EXPLORER”窗格中看到空白解解決方案。然後此擴展程式將詢問你是否創建模板文件夾請參見下圖。如果允許,它將在.vscode / solution-explorer 目錄中添加一些模板。
現在,讓我們向這個空白的解決方案中添加類庫和控制台應用程式。右鍵單擊解決方案(在Solution Explorer窗格中),然後從上下文菜單中選擇Add new project選項。這將列出.NET CLI提供的可用項目類型(請參見下圖)。選擇“類庫”選項。
系統將詢問您將使用哪種語言。選擇C#,編輯器將提示輸入項目名稱。 像我們之前給出的那樣給出MathOperations的名稱。類庫已添加到解決方案中。
重覆相同的步驟並添加名為“Calculator ”的控制台應用程式。請記住從項目模板中選擇控制台應用程式。
現在我們需要在控制台應用程式中添加類庫項目的引用。右鍵單擊控制台應用程式項目,然後從上下文菜單中選擇“添加引用”選項。由於解決方案中只有兩個項目,擴展程式將自動添加另一個項目的引用。如果有兩個以上的項目,我們需要從列表中選擇項目。
導航到類庫目錄MathOperations。將Class1.cs 類文件重命名為MathOperations.cs。在類中添加一個兩個數字的簡單簡單加法的方法,代碼如下:
public static class MathOperation { public static int Add(int num1, int num2) => num1 + num2; }
修改導航到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(); }
現在,右鍵單擊解決方案資源管理器樹中的控制台應用程式項目,然後從上下文菜單中選擇“運行”選項。您可以看到.NET CLI將在後臺運行應用程式。併在Output視窗中輸出結果,如下圖所示。
Visual Studio Code在.NET Core應用程式中運行測試插件
單元測試是軟體開發不可或缺的一部分。這裡我不打算詳細解釋單元測試,因為有很多線上資源。我只給大家介紹如何在.NET Core應用程式中包含單元測試以及可用於運行單元測試的Visual Studio Code的擴展。
- 首先讓我們該寫下數學運算的類庫方法
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;
}
- 現在,我們需要在解決方案中添加一個單元測試項目。
我們可以使用.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
將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); } }
現在,我們需要運行我們創建的測試。我們為此使用.NET CLI。打開終端。導航到MathOperationTests目錄。輸入dotnet test命令。我們將獲得以下輸出。
如您所見,輸出信息量較少。如果我們在Visual Studio中有類似於Test Explorer的東西來執行我們的單元測試並查看結果,那將會很好。好消息是有一個名為
.NET Core Test Explorer
的Visual Studio Code插件。下麵按照下圖所示在Visual Studio代碼中安裝此擴展吧。這裡不過多說明瞭安裝擴展程式後,您可以在左側活動欄中看到一個燒杯圖標。單擊該圖標,您將看到測試的側欄面板,其中列出了項目中發現的單元測試。測試項目將顯示在按命名空間和類分組的樹視圖中。您還可以看到每個測試的“運行”按鈕和頂部的“全部運行”按鈕。單擊Run All按鈕,您可以看到正在執行的所有測試及其結果。
我們可以看到所有測試都已通過,併在測試資源管理器窗格中標有綠色勾號。現在讓我們讓測試失敗。我將更改Add方法的邏輯以使測試失敗。
public static int Add(int num1, int num2) => num1 - num2;//這裡有bug
現在再次運行測試。我們可以看到我們對Add方法的測試失敗,併在test explorer窗格中用紅色符號標記。
如果我們導航到我們編寫的測試方法,我們可以看到它現在在Assert方法中有一個紅色的波浪下劃線。如果我們將滑鼠懸停在該波浪線上,將顯示一個信息框,顯示測試的實際值和預期值。VS代碼的底部面板(終端所在的面板)的“ 問題”選項卡中顯示相同的信息。這可以在下圖中看到。
修複錯誤並再次運行測試,以便所有測試都通過,我們可以再次看到綠色標記。
Visual Studio Code中順暢的調試.NET Core應用程式
在這部分,我們將瞭解如何在Visual Studio Code中順暢的調試.NET Core應用程式。為了在Visual Studio Code中調試.NET Core應用程式,我們需要為VS Code安裝C#擴展。(上面我們已經安裝過了)
我們首先在Calculator控制台程式的Program.cs文件中加入斷點。與Visual Studio類似,我們可以通過單擊源代碼文件的左邊距,或者將游標放在一行代碼上並按F9,在源代碼中設置行斷點。斷點在編輯器的左邊緣顯示為紅點。
要開始調試,請按F5。這將自動將調試器附加到我們的Calculator應用程式來啟動應用程式。我們可以看到執行在我們設置的斷點處停止,這有助於我們在調試時瞭解當前的程式狀態。
這裡需要註意下,需要修改launch.json中的對應路徑以及項目名稱為Calculator。
我們可以看到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/