AddMvc/AddMvcCore/AddControllers等區別


  比較一下AddMvc、AddMvcCore、AddController等在服務配置時的區別及各自擁有的功能。

 

1.services.AddMvcCore()

只注冊路由請求和執行控制器所必要的核心服務,確保 Pipeline 程序可運轉。除非是有能力並想完全去自主DIY,一般不建議直接使用這個。

 

2.services.AddControllers()

除包含了 AddMvcCore() 所有功能,再加上:

  • Authorization
  • ApiExplorer
  • Data Annotation
  • Formatter Mapping
  • CORS

要用 Controller 但不用View,新建WebAPI時,默認采用的就是這個,使用這個時,與SwashBuckle配合時,無需再額外引入ApiExplorer,自身已經依賴。

 

3.services.AddRazorPages()

包含 AddMvcCore() 所有功能,再加上:

  • Razor Pages
  • Authorization
  • Data Annotation
  • Cache Tag Helper

 

4.services.AddControllersWithViews()

包含 AddControllers() 所有功能,再加上:

  • cshtml和Razor View
  • Cache Tag Helper

標准MVC模式,常用Razor視圖,使用這個就夠了

 

5.services.AddMvc()

包含 AddControllersWithViews() 及 AddRazorPages() 功能。 包含的功能最為齊全,如果不想遺漏功能,直接使用這個就行

 

 

2020-09-05,望技術有成后能回來看見自己的腳步 


免責聲明!

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



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