3 .NET Core筆試題

2023-02-18 12:01:04

1.什麼是ASP.NET Core?
2.ASP.NET Core 中AOP的支援有哪些?
3.ASP.NET Core Filter的註冊方式有哪些?
4.ASP.NET Core Filter如何支援依賴注入?
5.ASP.NET Core 如何和讀取組態檔中的內容?
6.ASP.NET Core有哪些好的功能?
7.ASP.NET Core跟ASP.NET比較有哪些更好的地方?
8.什麼是meta packages?
9.ASP.NET Core應用能夠跟ASP.NET4.x架構一起工作嗎?
10.什麼是ASP.NET Core的StartUp 類?
11.StartUp 類的configservice方法和configure方法各有什麼作用?
12.ASP.NET Core裡面的路徑是如何處理的?
13.ASP.NET Core工程裡面有多少個工程檔案?
14.如何使taghelper在元素這一層上失效?


1.什麼是ASP.NET Core?

首先ASP.NET Core可以說是ASP.NET的升級版本。它遵循了.NET的標準架構,是一個基於.NET Core的 Web開發框架,可以執行於多個作業系統上。它更快,更容易設定,更加模組化,可延伸性更強

2.ASP.NET Core 中AOP的支援有哪些?

通過Filter來支援;分別有IResourceFilter AuthorizeFilter ActionFilter ExceptionFilter ResultFilter, Filter也被稱為攔截器!

3.ASP.NET Core Filter的註冊方式有哪些?

  • 方法註冊:只對方法生效
  • 控制器註冊:對控制器中的所有方法生效
  • 全域性註冊:對整個專案生效;

  • 4.ASP.NET Core Filter如何支援依賴注入?

    可以通過全域性註冊,支援依賴注入
    通過TypeFilter(typeof(Filter)) 標記在方法,標記在控制器
    通過ServiceType(typeof(Filter))標記在方法,標記在控制器,必須要註冊Filter這類;
    TypeFilter和ServiceType的本質是實現了一個IFilterFactory介面

    5.ASP.NET Core 如何和讀取組態檔中的內容?

    可以有兩種方式,可以通過IConfiguration介面來讀取;
    有可以定義根據組態檔結構一致的實體物件,來繫結到物件中去;或者通過1寫入,2注入讀取
    必須保證:DBConnectionOption和組態檔的內容結構一致;
    1. services.Configure<DBConnectionOption>
    (Configuration.GetSection("ConnectionStrings"));//注入多個連結
    
    2.private DBConnectionOption dBConnections = null;
           private DbContext _Context = null;
            
           public DbContextFactory(DbContext context, IOptions<DBConnectionOption>
    options)
           {
               _Context = context;
               dBConnections = options.Value;
           }
    

    6.ASP.NET Core有哪些好的功能?

    第一是依賴注入。
    第二是紀錄檔系統架構。
    第三是引入了一個跨平臺的網路伺服器,kestrel。可以沒有iis, apache和nginx就可以單獨執行。
    第四是可以使用命令列建立應用。
    第五是使用appsettings來設定工程。
    第六是使用StartUp來註冊服務。
    第七是更好的支援非同步程式設計。
    第八是支援web socket和signal IR。
    第九是對於跨網站的請求的預防和保護機制。

    7.ASP.NET Core跟ASP.NET比較有哪些更好的地方?

    第一是跨平臺,它可以執行在三大作業系統上面,windows, Linux和MAC。
    第二是對架構本身安裝沒有依賴,因為所有的依賴都跟程式本身在一起。
    第三是ASP.NET Core處理請求的效率更高,能夠處理更多的請求。
    第四是ASP.NET Core有更多的安裝設定方法。

    8.什麼是meta packages?

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

    9. ASP.NET Core應用能夠跟ASP.NET4.x架構一起工作嗎?

    可以。ASP.NET Core應用可以跟標準的dot net 庫一起工作

    10.什麼是ASP.NET Core的StartUp 類?

    StartUp 類是ASP.NET Core應用的入口。所有的ASP.NET Core應用必須有這個類。這個類用來設定應 用。這個類的呼叫是在program main函數裡面進行設定的。類的名字可以自己定義。

    11.StartUp 類的configservice方法和configure方法各有什麼作用?

    configservice : 在這個方法裡我們可以新增一些service進入依賴注入容器。
    configure : 這個方法來定義整個應用如何響應HTTP請求。它有幾個比較重要的引數,applicationbuilder,Hosting,environment ,logfactory, 在這裡我們可以設定一些中介軟體用來處理路徑,驗證和session等等。

    12.ASP.NET Core裡面的路徑是如何處理的?

    路徑處理是用來為進入的請求尋找處理常式的機制。所有的路徑在函數執行開始時進行註冊。 主要有兩種路徑處理方式, 常規路徑處理和屬性路徑處理。常規路徑處理就是用MapRoute的方式設定 呼叫路徑,屬性路徑處理是指在呼叫函數的上方設定一個路徑屬性。

    13.ASP.NET Core工程裡面有多少個工程檔案?

    launchsetting,appsettings,Program, StartUp

    14.如何使taghelper在元素這一層上失效?

    使用歎號。