.NET使用.NET Core CLI開(kāi)發(fā)應(yīng)用程序
要開(kāi)發(fā).NET Core應(yīng)用程序,除了使用強(qiáng)大的Visual Studio之外,還可以使用.NET Core CLI。
.NET Core CLI (Command-Line Interface),也就是.NET Core命令行界面,它是一個(gè)開(kāi)發(fā).NET Core應(yīng)用程序的跨平臺(tái)工具鏈。
安裝.NET Core SDK后,就可以使用.NET Core CLI,在命令提示符窗口中,使用dotnet --version查看本機(jī)安裝的.NET Core的版本,或者使用dotnet --info查看本機(jī).NET Core的安裝情況。
.NET Core CLI目前支持創(chuàng)建控制臺(tái)和ASP.NET Core兩種類型的應(yīng)用程序。
一、創(chuàng)建控制臺(tái)應(yīng)用程序
在命令提示符窗口輸入命令:
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
最終程序會(huì)輸出“Hello, world!”。
上面的命令中,前三行在D盤創(chuàng)建src目錄,并進(jìn)入該目錄,后兩行是創(chuàng)建一個(gè).NET Core控制臺(tái)應(yīng)用程序,并運(yùn)行。
HelloConsole目錄下的Program.cs的內(nèi)容:
using System;
namespace HelloConsole
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
}
}
}
因此,最終程序輸出“Hello, world!”。
二、創(chuàng)建ASP.NET Core應(yīng)用程序
接下來(lái),我們創(chuàng)建一個(gè)Web API應(yīng)用程序,這個(gè)例子會(huì)創(chuàng)建一個(gè)解決方案和兩個(gè)項(xiàng)目,其中一個(gè)項(xiàng)目是Web API,而另一個(gè)是類庫(kù)項(xiàng)目,并且Web API項(xiàng)目會(huì)引用類庫(kù)項(xiàng)目。
在原來(lái)的位置繼續(xù)輸入下列命令:
D:\src>mkdir HelloApi D:\src>cd HelloApi D:\src\HelloApi>dotnet new sln
以上命令創(chuàng)建了HelloApi目錄,并在其中創(chuàng)建了HelloApi.sln解決方案文件。
D:\src\HelloApi>dotnet new api -o HelloApi D:\src\HelloApi>dotnet new classlib -o HelloApi.Models
以上命令分別創(chuàng)建了HelloApi和HelloApi.Model兩個(gè)項(xiàng)目,前者是Web API應(yīng)用程序,后者是一個(gè)類庫(kù)。
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
以上命令將兩個(gè)項(xiàng)目添加到解決方案中,并為Web API項(xiàng)目添加對(duì)類庫(kù)項(xiàng)目的引用。
一切就緒后,此時(shí)可以使用輕量級(jí)的開(kāi)發(fā)工具,比如Visual Studio Code,進(jìn)行編碼,這里我們使用記事本程序。打開(kāi)HelloApi.Models目錄中的Class1.cs文件,更改它的內(nèi)容:
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" };
}
}
打開(kāi)HelloApi\Controllers目錄下的ValueController.cs,首先引用命名空間:
using HelloApi.Models;
將其中的Get方法修改如下:
// GET api/values
[HttpGet]
public ActionResult<IEnumerable<string>> Get()
{
// 調(diào)用另一個(gè)庫(kù)中的方法獲取結(jié)果并返回
return Data.GetNames();
}
保存修改后,運(yùn)行項(xiàng)目,繼續(xù)在命令提示符窗口輸入命令:
D:\src\HelloApi>dotnet run -p HelloApi\HelloApi.csproj
成功運(yùn)行后,在Postman中調(diào)用https://localhost:5001/api/values,結(jié)果:

最后,使用dotnet publish還可以輸出用于發(fā)布項(xiàng)目的文件。
除了上面用到的命令外,.NET Core CLI還支持其他命令,如為項(xiàng)目添加NuGet包、添加Entity Framework Core的遷移等。在微軟文檔(Microsoft Docs)中能夠看到.NET Core CLI所有的命令選項(xiàng),文檔地址
總的來(lái)看,.NET Core CLI功能是非常強(qiáng)大的,使用它結(jié)合VS Code等編輯器,完全可以上手開(kāi)發(fā).NET Core平臺(tái)中任何類型的應(yīng)用程序,而且由于.NET Core和VS Code都是跨平臺(tái)的,因此,所有的操作在Linux、Mac上都是完全一致的。
最后,在Cheatography網(wǎng)站上,有人上傳了一份常用的.NET Core CLI命令(PDF版本),適合于打印,點(diǎn)擊這里可下載,你也可以從這里找到它:鏈接地址。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
asp.net中Fine Uploader文件上傳組件使用介紹
最近在處理后臺(tái)數(shù)據(jù)時(shí)需要實(shí)現(xiàn)文件上傳.考慮到對(duì)瀏覽器適配上采用Fine Uploader. Fine Uploader 采用ajax方式實(shí)現(xiàn)對(duì)文件上傳.同時(shí)在瀏覽器中直接支持文件拖拽[對(duì)瀏覽器版本有要求類似IE版本必須是9或是更高的IE10].2013-01-01
asp.net下UTF-7轉(zhuǎn)GB2312編碼的代碼(中文)
UTF-7轉(zhuǎn)換GB2312編碼的方法2010-07-07
asp.net使用for循環(huán)實(shí)現(xiàn)Datalist的分列顯示功能
工程業(yè)績(jī)--用for循環(huán)代替了DataList多列顯示,得到2行四列的表格,需要內(nèi)存表的8行數(shù)據(jù)2009-12-12
asp.net Javascript獲取CheckBoxList的value
最近在做一個(gè)BS的小項(xiàng)目,記得自己搞asp.net的時(shí)候,還是兩年以前,大部分的東西只是有點(diǎn)印象,忘得差不多了,所以這次也算是溫習(xí)的過(guò)程吧,一邊學(xué)習(xí),一邊趕工,呵呵呵。。。。2009-12-12
asp.net String.IsNullOrEmpty 方法
2009-04-04
Javascript 直接調(diào)用服務(wù)器C#代碼 ASP.NET Ajax實(shí)例
近來(lái)總有一些朋友會(huì)問(wèn)到一些入門的問(wèn)題,把這些問(wèn)題整理一下,寫(xiě)出來(lái)。在以前的文章里,曾經(jīng)利用純JS編寫(xiě)過(guò)Ajax引擎,在真正開(kāi)發(fā)的時(shí)候,大家都不喜歡以這種低效率的方式開(kāi)發(fā),利用MS Ajax的集成的引擎,可以簡(jiǎn)單不少工作。2010-03-03
.net下調(diào)用sqlserver存儲(chǔ)過(guò)程的小例子
2013-06-06
Repeater控件動(dòng)態(tài)變更列(Header,Item和Foot)信息(重構(gòu)cs)
上一篇雖然它算不上是完全動(dòng)態(tài)化,但它已經(jīng)達(dá)到初期想要的效果,現(xiàn)另開(kāi)一篇,不是重新另外寫(xiě),而是想重構(gòu)cs的代碼,因?yàn)榍耙黄拇a雖然簡(jiǎn)單,但代碼冗余過(guò)多,感興趣的朋友可以參考下哈2013-03-03
.NET Core Dapper操作mysql數(shù)據(jù)庫(kù)的實(shí)現(xiàn)方法
這篇文章主要介紹了.NET Core Dapper操作mysql數(shù)據(jù)庫(kù)的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04

