要開發.NET Core應用程序,除了使用強大的Visual Studio之外,還可以使用.NET Core CLI。
.NET Core CLI (Command-Line Interface),也就是.NET Core命令行界面,它是一個開發.NET Core應用程序的跨平台工具鏈。
安裝.NET Core SDK后,就可以使用.NET Core CLI,在命令提示符窗口中,使用dotnet --version查看本機安裝的.NET Core的版本,或者使用dotnet --info查看本機.NET Core的安裝情況。
.NET Core CLI目前支持創建控制台和ASP.NET Core兩種類型的應用程序。
一、創建控制台應用程序
在命令提示符窗口輸入命令:
C:\Users\Admin>D: D:\>mkdir src D:\>cd src D:\src>dotnet new console -o HelloConsole D:\src>dotnet run -p HelloConsole\HelloConsole.csproj
最終程序會輸出“Hello, world!”。
上面的命令中,前三行在D盤創建src目錄,並進入該目錄,后兩行是創建一個.NET Core控制台應用程序,並運行。
HelloConsole目錄下的Program.cs的內容:
using System; namespace HelloConsole { class Program { static void Main(string[] args) { Console.WriteLine("Hello World!"); } } }
因此,最終程序輸出“Hello, world!”。
二、創建ASP.NET Core應用程序
接下來,我們創建一個Web API應用程序,這個例子會創建一個解決方案和兩個項目,其中一個項目是Web API,而另一個是類庫項目,並且Web API項目會引用類庫項目。
在原來的位置繼續輸入下列命令:
D:\src>mkdir HelloApi D:\src>cd HelloApi D:\src\HelloApi>dotnet new sln
以上命令創建了HelloApi目錄,並在其中創建了HelloApi.sln解決方案文件。
D:\src\HelloApi>dotnet new api -o HelloApi D:\src\HelloApi>dotnet new classlib -o HelloApi.Models
以上命令分別創建了HelloApi和HelloApi.Model兩個項目,前者是Web API應用程序,后者是一個類庫。
D:\src\HelloApi>dotnet sln HelloApi.sln add HelloApi/HelloApi.csproj D:\src\HelloApi>dotnet sln HelloApi.sln add HelloApi.Models/HelloApi.Models.csproj D:\src\HelloApi>dotnet add HelloApi\HelloApi.csproj reference HelloApi.Models\HelloApi.Models.csproj
以上命令將兩個項目添加到解決方案中,並為Web API項目添加對類庫項目的引用。
一切就緒后,此時可以使用輕量級的開發工具,比如Visual Studio Code,進行編碼,這里我們使用記事本程序。打開HelloApi.Models目錄中的Class1.cs文件,更改它的內容:
using System; using System.Collections.Generic; namespace HelloApi.Models { public class Data { public static List<string> GetNames() => new List<string> { "A", "B", "C", "D", "E" }; } }
打開HelloApi\Controllers目錄下的ValueController.cs,首先引用命名空間:
using HelloApi.Models;
將其中的Get方法修改如下:
// GET api/values [HttpGet] public ActionResult<IEnumerable<string>> Get() { // 調用另一個庫中的方法獲取結果並返回 return Data.GetNames(); }
保存修改后,運行項目,繼續在命令提示符窗口輸入命令:
D:\src\HelloApi>dotnet run -p HelloApi\HelloApi.csproj
成功運行后,在Postman中調用https://localhost:5001/api/values,結果:
最后,使用dotnet publish還可以輸出用於發布項目的文件。
除了上面用到的命令外,.NET Core CLI還支持其他命令,如為項目添加NuGet包、添加Entity Framework Core的遷移等。在微軟文檔(Microsoft Docs)中能夠看到.NET Core CLI所有的命令選項,文檔地址:https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet?tabs=netcore21
總的來看,.NET Core CLI功能是非常強大的,使用它結合VS Code等編輯器,完全可以上手開發.NET Core平台中任何類型的應用程序,而且由於.NET Core和VS Code都是跨平台的,因此,所有的操作在Linux、Mac上都是完全一致的。
最后,在Cheatography網站上,有人上傳了一份常用的.NET Core CLI命令(PDF版本),適合於打印,點擊這里可下載,你也可以從這里找到它:https://www.cheatography.com/oba/cheat-sheets/dotnet-cli/。