ASP.Net?Core?MVC基礎(chǔ)系列之項目創(chuàng)建
一 : 系列教程環(huán)境介紹
1: 操作系統(tǒng), Windows 10 專業(yè)版 64位 (版本號: 1809)
2: IDE使用Visual Studio 2017專業(yè)版 (版本號: 15.9.5)
3: SDK環(huán)境 .Net Core 2.2.101
4: 前端 Vue 2.X
5: 數(shù)據(jù)庫 MSSQL 2017
6: 語言使用 C# 7.3
二 : .Net Core 2.2環(huán)境安裝
進行.Net Core開發(fā), 需要安裝.Net Core SDK, 下載地址
下載安裝完成之后在CMD里面運行dotnet --version 查看版本號, 如圖
三: 新建一個ASP.Net Core MVC項目
打開VS2017, 新建項目, 選擇.Net Core --> ASP.NET Core Web應(yīng)用程序, 如圖
取好項目名字和選擇完路徑, 點擊確定,進入下一步
選擇Core 2.2, 選擇空的模版, 這樣才能一步步理解ASP.Net Core MVC
點擊確定之后, 項目結(jié)構(gòu)應(yīng)該是這樣的
比較簡潔, 下面開始介紹每個文件的作用
四: 項目文件及默認(rèn)配置解析
- Connected Services. 這是存放服務(wù)引用的, 比如Web Services等等, 這個項目文件夾在硬盤上實際上是不存在的, 本系列教程也不會使用
- Properties. 這個項目文件夾在硬盤上是實際存在的, 里面有個launchSettings.json文件. 對項目開發(fā)進行一些基本配置, 比如啟動方式, 當(dāng)前環(huán)境等等, 后面的教程會有基本的講解
- 依賴項. 這也是個在硬盤上不存在的文件夾. 存放當(dāng)前項目的引用. 和.Net Framework的引用是一個意思. 只不過.Net Core的引用都是基于Nuget管理, 不能直接添加DLL引用
- appsettings.json. 該文件是當(dāng)前項目的配置信息. 等價于.Net Framework的Web.config文件, 可以把項目一些配置信息放在這里, 比如數(shù)據(jù)庫連接字符串等等
- Program.cs不必多說
- Startup.cs. 主要是用來控制配置服務(wù)信息, 注冊一些中間件什么的
- Welcome.csproj. 這個文件在VS里面是看不到的, 但是在硬盤上能看到, 如果需要在VS里面查看, 右鍵項目, 編輯Welcome.csproj即可, 如圖
- TargetFramework 表示當(dāng)前使用的是.Net Core2.2版本
- AspNetCoreHostingModel, 這是.Net Core 2.2新加的, 優(yōu)化了IIS的性能. 取值為InProcess表示讓當(dāng)前的這個MVC Web運行于IIS進程中, 就是那個w3wp.exe這個進程. 還有一個別的選項, 叫OutOfProcess. 取值這個表示使用反向代理模式, 比如使用nginx反向代理. 使用OutOfProcess沒有InProcess性能好, 畢竟微軟自家的東西, 有針對性優(yōu)化
- PackageReference表示當(dāng)前引用的Nuget包, 不做過多解釋. 也可以在依賴項中展開查看,和這里面的名字一樣
- Program類代碼分析. 一個Main方法, 程序入口, 所有的程序都有的. 一個CreateWebHostBuilder方法, 這方法使用了WebHost類的CreateDefaultBuilder方法, 可以理解為創(chuàng)建了一個宿主, 然后再調(diào)用了IWebHostBuilder接口的擴展UseStartup方法, 傳入Startup, 進行一些配置和服務(wù)注冊
- CreateDefaultBuilder方法里面包含了一些默認(rèn)配置, 比如使用了Kestrel服務(wù)器, 集成IIS, 日志輸出功能等等, 這是個ASP.Net Core內(nèi)置的一個跨平臺托管服務(wù)器. 當(dāng)然, 很多默認(rèn)的配置都可以在Startup類中進行自定義配置. 可以在源碼中查看. 怎么查看源碼, VS2017自帶了, 打開即可, 如圖設(shè)置
然后我們在CreateDefaultBuilder方法上按F12, 即可看到源碼, 源碼如下:
能夠很詳細(xì)的看到, 使用了UseKestrel &UseIIS &UseIISIntegration等方法
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
ASP.Net Core MVC基礎(chǔ)系列之服務(wù)注冊和管道
這篇文章介紹了ASP.Net Core MVC中的服務(wù)注冊和管道,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-02-02asp.net網(wǎng)絡(luò)數(shù)據(jù)庫開發(fā)實例精解 源文件
asp.net網(wǎng)絡(luò)數(shù)據(jù)庫開發(fā)實例精解 源文件...2006-09-09ASP.NET中CheckBoxList復(fù)選框列表控件詳細(xì)使用方法
本文主要介紹CheckBoxList幾種常見的用法,并做出范例演示供大家參考,希望對學(xué)習(xí)asp.net的朋友有所幫助。2016-04-04asp.net實例代碼protected override void Render(HtmlTextWriter wri
把最終要輸出的html壓縮后再輸出和最終輸出前先存為html文件,如果發(fā)布最新信息了,可以打開一次default.aspx,然后他又會生成一次html2008-08-08