.net core 經典面試題


第1題,什么是ASP net core?

首先ASP net core不是 asp net的升級版本。它遵循了dot net的標准架構, 可以運行於多個操作系統上。它更快,更容易配置,更加模塊化,可擴展性更強。

第2題,asp dot core有哪些好的功能?

第一是依賴注入。

第二是日志系統架構。

第三是引入了一個跨平台的網絡服務器,kestrel。可以沒有iis, apache和nginx就可以單獨運行。

第四是可以使用命令行創建應用。

第五是使用APP settings json file來配置工程。

第六是使用start up來注冊服務。

第七是更好的支持異步編程。

第八是支持web socket和signal IR。

第九是對於跨網站的請求的預防和保護機制。

第3題,dot net core跟dot net比較有哪些更好的地方?

第一是跨平台,它可以運行在三大操作系統上面,windows, Linux和MAC。

第二是對架構本身安裝沒有依賴,因為所有的依賴都跟程序本身在一起。

第三是dot net core處理請求的效率更高,能夠處理更多的請求。

第四是dot net core有更多的安裝配置方法。

第4題什么是meta packages?

Meta packages是指包含所有ASP dot net code依賴的一個包。叫做Microsoft.AspNetCore

第5題,don net core應用能夠跟dot net 4.x架構一起工作嗎?

可以。Dot net core應用可以跟標准的dot net 庫一起工作。

第6題,什么是dot net core的startup class?

Startup class是dot net core應用的入口。所有的dot net core應用必須有這個class。這個類用來配置應用。這個類的調用是在program main函數里面進行配置的。類的名字可以自己定義。

第7題, Startup class的config service方法有什么作用?

在這個方法里我們可以添加一些service進入依賴注入容器。

第8題,startup class的configure方法有什么作用?

這個方法來定義整個應用如何響應HTTP請求。它有幾個比較重要的參數,application builder,Hosting environment, logo factory, 在這里我們可以配置一些中間件用來處理路徑,驗證和session等等。

第9題,什么是中間件?

中間件在這里是指注入到應用中處理請求和響應的組件。

第10題,application builder的use和run方法有什么區別?

這兩個方法都在start up class的configure方法里面調用。都是用來向應用請求管道里面添加中間件的。Use方法可以調用下一個中間件的添加,而run不會。

第11題,dot net core 管道里面的map拓展有什么作用?

可以針對不同的路徑添加不同的中間件。

第12題,dot net core里面的路徑是如何處理的?

路徑處理是用來為進入的請求尋找處理函數的機制。所有的路徑在函數運行開始時進行注冊。

主要有兩種路徑處理方式, 常規路徑處理和屬性路徑處理。常規路徑處理就是用MapRoute的方式設定調用路徑,屬性路徑處理是指在調用函數的上方設定一個路徑屬性。

第13題,如何在dot net core中激活session功能?

首先要添加session包. 其次要在config service方法里面添加session。然后又在configure方法里面調用usesession。

第14題,dot net core工程里面有多少個工程文件?

global, launch setting,app settings,bundle config,bower, package。

第15題,什么是dot net core里面的tag helper?

Tag helper用來在服務器端使用Razor視圖引擎創建html元素的。

第16題, 如何使tag helper在元素這一層上失效?

使用嘆號。

第17題,什么是Razor頁面?

是dot net core中支持ASP網頁表格的一種開發模型。@page 作為頁面的起始標志。

第18題,如何在Razor頁面中實現數據模型綁定?

使用bindproperty屬性。

第19題, 如何在controller中注入service?

在config services方法中配置這個service。

在controller的構造函數中,添加這個依賴注入。

第20題,描述一下依賴注入后的服務生命周期?

在dot net core中,我們不需要關心如何釋放這些服務, 因為系統會幫我們釋放掉。有三種服務的生命周期。

單實例服務, 通過add singleton方法來添加。在注冊時即創建服務, 在隨后的請求中都使用這一個服務。

短暫服務, 通過add transient方法來添加。是一種輕量級的服務,用於無狀態服務的操作。

作用域服務,一個新的請求會創建一個服務實例。使用add scoped方法來添加。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM