新聞中心
通過參照.NET Core相關(guān)官方文檔,在我的Mac電腦上用Visual Studio Code創(chuàng)建了我的第一個ASP.NET應(yīng)用。

開發(fā)環(huán)境搭建
首先要先安裝.Net Core和Visual Studio Code,并且要給Visual Studio Code安裝 C# extension,另外要到nodejs.org 安裝Node.js和npm。
利用Yeoman搭建應(yīng)用
由于我們在安裝Node.js時自帶的npm地址是墻外,npm install有可能沒有反應(yīng)或者很卡。所以本文所有的npm安裝都使用了淘寶NPM鏡像:
- npm install cnpm -g --registry=https://registry.npm.taobao.org
使用npm安裝必要的yeoman generators和bower。
- sudo cnpm install -g yo generator-aspnet bower
Yeoman的logo是一個戴帽子的男人。它其實是一個工作流,這個工作流包含了三種用來提升你構(gòu)建一個Web應(yīng)用的生產(chǎn)力和滿意度的工具: 腳手架工具(yo), 構(gòu)建工具(Gulp,Grunt等), 包管理工具(比如npm和Bower)。
使用yo aspnet來運行ASP.NET Core generator,以生成一個Web Application基礎(chǔ)模板。
- yo aspnet
yo aspnet生成的模板都是基于大家熟悉的Visual Studio 2015上的模板,這個模板維護(hù)在ASP.NET Templates project。
然后會提示W(wǎng)hat type of application do you want to create?
這里選擇Web Application Basic [without Membership and Authorization]并回車。
接著會提示W(wǎng)hich UI framework would you like to use?
這里選擇Bootstrap (3.3.6) as the UI framework并回車。
用MyFirstApp作為應(yīng)用名稱并回車。如下圖:
此時generator會生成項目的基礎(chǔ)框架文件,然后提示你分別執(zhí)行restore,build,run命令。
- Your project is now created, you can use the following commands to get going
- cd "MyFirstApp"
- dotnet restore
- dotnet build (optional, build will also happen with it‘s run)
- dotnet run
至此,打開本地的瀏覽器在地址欄輸入:http://localhost:5000,即可訪問你創(chuàng)建的第一個程序。
使用Visual Studio Code開發(fā)應(yīng)用
用Visual Studio Code打開剛剛創(chuàng)建的項目,通過快捷鍵??P輸入dot,選擇dotnet: Restore Packages來restore必要的build和debug項目依賴??梢栽赩S Code中直接運行包括dotnet restore在內(nèi)的命令和所有在project.json文件中引用到的工具以及在.vscode/tasks.json中自定義的任務(wù)。
你還可以通過快捷鍵?`調(diào)出集成在VS Code里面的控制臺。
對于未被用到的using語句會被標(biāo)記一道綠色波浪線,鼠標(biāo)移到上面還有顯示一個黃色小燈泡,此時你可以使用? .移除它們;類和方法也會顯示它們在該項目中被引用的次數(shù);還可以通過?KC來添加代碼塊注釋,通過?KU來取消注釋。
點擊VS Code左側(cè)調(diào)試窗格中的綠色三角形的調(diào)試按鈕,可能會在頂部出現(xiàn)一個錯誤提示信息:
根據(jù)錯誤提示可知,我們需要配置launch.json文件里面的program為實際的可執(zhí)行文件。
配置成功后,我們可以給程序設(shè)置斷點、添加監(jiān)視等。
最終程序會調(diào)出本地默認(rèn)的瀏覽器程序并導(dǎo)航到http://localhost:5000,效果如下:
基于Kestrel本地運行應(yīng)用
本示例采用Kestrel作為Web服務(wù)器,可以在project.json里看到它被作為一個依賴項。
KestrelHttpServer服務(wù)器是微軟推出的唯一一款基于跨平臺網(wǎng)絡(luò)庫libuv的跨平臺Web服務(wù)器。 通過代碼可以發(fā)現(xiàn)通過調(diào)用IWebHostBuilder的UseKestrel擴(kuò)展方法即可完成對KestrelHttpServer的注冊。
- namespace Microsoft.AspNetCore.Hosting
- {
- public static class WebHostBuilderKestrelExtensions
- {
- public static IWebHostBuilder UseKestrel(this IWebHostBuilder hostBuilder)
- {
- return hostBuilder.ConfigureServices(services =>
- {
- services.AddTransient
, KestrelServerOptionsSetup>(); - services.AddSingleton
(); - });
- }
- public static IWebHostBuilder UseKestrel(this IWebHostBuilder hostBuilder,
- Action
options) - {
- return hostBuilder.UseKestrel().ConfigureServices(services =>
- {
- services.Configure(options);
- });
- }
- }
- }
【本文為專欄作者“朱成林”的原創(chuàng)稿件,轉(zhuǎn)載請聯(lián)系原作者】
當(dāng)前文章:如何在Mac下運行ASP.NETCore應(yīng)用程序
標(biāo)題鏈接:http://www.5511xx.com/article/cdodced.html


咨詢
建站咨詢
