-
路由通配 startup中
app.UseMvc(route => {
route.MapRoute("default","{controller=Home}/{action=index}/{id?}");
});
路由特殊定義限制,給controller加特殊限制
如限制只有admin前綴可訪問(wèn)
[Route("admin/[controller]/[action]")]
查看全部 -
2-3program與startup
這兩個(gè)cs文件是asp.net系統(tǒng)中最重要的組成部分,分別主管程序入口及系統(tǒng)生命周期,startup.cs集中管理了系統(tǒng)的依賴注入,中間件midware,請(qǐng)求通道request pipeline,學(xué)習(xí)一門新技術(shù)最好的方法就是從其啟動(dòng)入口開(kāi)始。asp.net core 程序入口就是program.cs中的主函數(shù)main
program.cs文件main函數(shù),.net core應(yīng)用程序?qū)嶋H上就是個(gè)console app,createdefaultbuilder創(chuàng)建并運(yùn)行一個(gè)虛擬網(wǎng)站托管主【加載主機(jī)和應(yīng)用程序的配置信息】【配置日志記錄】【設(shè)置web服務(wù)器】【設(shè)置.netcore應(yīng)用程序的托管形式】
startup.cs是.netcore sdk默認(rèn)生成的,在configureservices里注入各種服務(wù)組件的依賴【在.net運(yùn)行時(shí)調(diào)用,.net core 提供了內(nèi)置的ioc容器,該方法就是將自己的服務(wù)注入到ioc容器中】,在configure中設(shè)置中間件midware,請(qǐng)求通道request pipeline【配置系統(tǒng)的http請(qǐng)求通道,檢查處理http請(qǐng)求,交由中間件middleware處理,該方法的環(huán)境變量由右鍵解決方案屬性debug中設(shè)置或是properties文件夾中l(wèi)aunchsetting.js中設(shè)置】。
查看全部 -
引用
using Microsoft.AspNetCore.Identify;
using Microsoft.AspNetCore.Identify.EntityFrameworkCore;
查看全部 -
2-2創(chuàng)建實(shí)戰(zhàn)項(xiàng)目
【開(kāi)發(fā)模板的選擇】【sdk版本的選擇】【項(xiàng)目設(shè)置】
打開(kāi)vs2019,點(diǎn)擊create a new project,選擇asp.net core web application,創(chuàng)建.net core 2.2 empty 空模板
項(xiàng)目依賴aspnetcore.app,aspnetcore.razor.design
c#依賴管理插件nuget,類似于java的maven,js的npm,都是項(xiàng)目構(gòu)建和依賴解析的工具,完成項(xiàng)目依賴的自動(dòng)安裝,解決依賴沖突
項(xiàng)目文件csproj,其實(shí)是xml,itemgroup節(jié)點(diǎn)記錄項(xiàng)目依賴包
appsetting.json文件保存項(xiàng)目的runtime設(shè)置,可以保存很多諸如數(shù)據(jù)庫(kù)連接字符串,第三方信息,賬號(hào)密碼,token等
program.cs,startup.cs涉及整個(gè)系統(tǒng)的生命周期
項(xiàng)目添加文件夾wwwroot[【asp.net規(guī)范其為特殊文件夾存放所有前端靜態(tài)文件如js,css,圖片,視頻等,該文件夾內(nèi)所有文件都會(huì)被服務(wù)器托管】
properties下的launchsettings.json存儲(chǔ)服務(wù)器端口信息等設(shè)置
startup.cs文件用于項(xiàng)目運(yùn)行配置
查看全部 -
2-1hello world
開(kāi)發(fā)工具 :vs community社區(qū)版【非商用完全免費(fèi)https://visualstudio.microsoft.com】,vs code【免費(fèi)開(kāi)源,可商用https://code.visualstudio.com】,.net?sdk【https://dotnet.microsoft.com】
ide與sdk安裝:安裝visual studio時(shí),選擇同時(shí)安裝.net core sdk,選擇安裝.net core sdk2.2,【vsinstaller,workload選asp.net and web development組件和.netcore cross-platform development組件勾選.net core 2.2development tools】
查看全部 -
1-2 asp.net core?
1.歷史:2016asp.net core 1.0,2018asp.net core 2.2
2.跨平臺(tái):windows,macos,linux,unix
3.性能:輕量級(jí),適合微服務(wù)架構(gòu),容器化,不向后兼容(1.0升2.0要重構(gòu),.net framwork換成.net core要重寫)
4.c#:.net framework的旗艦語(yǔ)言,語(yǔ)言集成查詢linq,異步構(gòu)造await async,支持函數(shù)式語(yǔ)言,編譯器模塊化
5..netcore mvc:mvc架構(gòu)設(shè)計(jì)模式【model】,【view】,【controller】;基于.net的應(yīng)用框架
6.如何選擇技術(shù)棧:跨平臺(tái),云計(jì)算 ,容器化的發(fā)展,應(yīng)用層面的開(kāi)發(fā)使用的語(yǔ)言,編輯器,操作系統(tǒng)重要性降低,未來(lái)軟件的開(kāi)發(fā)更重要的是【開(kāi)發(fā)思維】,【代碼過(guò)程】,【設(shè)計(jì)模式】,【系統(tǒng)架構(gòu)】。
?
查看全部 -
1-1知識(shí)點(diǎn)
基礎(chǔ)知識(shí):.net core / 環(huán)境設(shè)置
asp mvc :mvc架構(gòu) / 路由系統(tǒng) / razor
entity framework:倉(cāng)庫(kù)模式 / code first / 映射數(shù)據(jù) / crud
身份認(rèn)證:認(rèn)證 / 授權(quán)
查看全部 -
跨平臺(tái)查看全部
-
傳統(tǒng)的路由:
映射資源必須保存在服務(wù)器中
url的相對(duì)路徑必須于請(qǐng)求路徑一致
無(wú)法服務(wù)動(dòng)態(tài)文件
文件必須帶有后綴
暴露服務(wù)器的文件結(jié)構(gòu)?
ASP.Net MVC路由系統(tǒng)
無(wú)需文件真正保存在硬盤上
訪問(wèn)文件無(wú)需后綴
url結(jié)構(gòu)于服務(wù)器文件夾結(jié)構(gòu)無(wú)關(guān)
查看全部 -
中間件/請(qǐng)求通道:
基本通過(guò)IApplicationBuilder創(chuàng)建
每個(gè)中間件都可以截獲、修改、并且傳遞請(qǐng)求對(duì)象,輸出響應(yīng)對(duì)象
在特定情況下,某些中間件可以做短路處理,直接向前端輸出相應(yīng)對(duì)象
查看全部 -
Nuget管理各種依賴,類似于Java的Maven,JavaScript的npm
查看全部 -
未來(lái)軟件開(kāi)發(fā)會(huì)越來(lái)越注重開(kāi)發(fā)思維,代碼過(guò)程,設(shè)計(jì)模式以及系統(tǒng)架構(gòu)
查看全部 -
下一節(jié)課程: 深入理解路由
將要學(xué)習(xí)
查看全部 -
講的很好(?▽?)查看全部
-
嗯查看全部
舉報(bào)