ASP.NET Core項目中新增和刪除的內容


最新一版的.NET幾經改名,最終得到了.NET Core這個高大上的名稱,相應的ASP.NET MVC也跟着提供了ASP.NET Core MVC版本。

在.NET Core沒有穩定名稱時,叫做MVC6,模糊記得主推的概念就是MCV的controller和API的controller合二為一了,還沒來得及深入了解名稱就改了。

目前的版本以及名稱已經相對成熟,從.NET社區推薦的熱點文章來看,都是針對.NET Core給出的使用介紹。

從最近的了解來看,相比之前ASP.NET版本,是一個全新的框架,程序集包之類的都獨立出來了,比較的輕量級,當然能運行在Linux/Mac系統,這是基礎核心賣點之一。

還可以使用Visual studio code在非windows平台開發程序,擴寬了.NET開發人員的技能應用范圍。

那么新框架跟之前的ASP.NET項目結構比,增加了哪些內容和刪除了哪些內容,根據最近的了解做一個簡要的整理。

 

1.Global.asax-》Program.cs

 

之前版本Global是網站啟動的必經之路,因此很多配置都在Application_Start中被設置好。

.NET Core的默認項目中不存在Global.asax文件,取而代之的是Program.cs文件,這個代碼文件實際上提供了一個Main方法(第一感覺這是個控制台程序),默認代碼創建了WebHost,然后運行這個host。看到Main方法應該很熟悉,也很好理解,程序的主入口嘛,這樣也跟其他的非Web .NET程序程序就一致了。

WebHost比較關鍵的操作是綁定了一個Startup文件,詳看接下來的說明。

 

2.App_Start -》Startup.cs

這個文件夾的放的內容從名稱上就看得出來,在ASP.NET 5版本的時候默認保存一些網站啟動時候需要執行的配置代碼,比如路由,過濾器等。當然都是一些靜態文件,需要在Global的Application_Start()中調用。

剛才第一點也提到了,Global.asax不存在了,是通過WebHost綁定了一個Startup.cs文件。

在這個Startup.cs文件了包攬了所以的配置工作,只要在里面執行配置就可以了。

更靈活的是可以根據不同的部署環境提供多個不同的Startup文件。

3.App_Data -》刪除

這個文件夾之前版本也很少用到,一般只是做練習將數據放在本地,在.NET Core默認項目中不提供了。

 

4.Web.Config -》弱化

這個經典的文件從第一版的的ASP.NET就有,到了.NET Core之后還能使用,但是功能已經弱化,新的配置文件都通過appsettings.json提供,配置更加的靈活,相關的讀取配置的API也更加精簡。

 

5.Scripts文件夾 -》wwwroot

Scripts文件夾默認放在項目根目錄下,當然前端開發負責人會有自己的安排。.NET Core默認吧靜態文件都放入到了wwwroot文件夾下,結合bower的管理方式,會提供一個Lib文件夾,然后每一個組件一個文件夾的方式存在。

 

6.新增Dependencies

這里的Dependencies不是程序集的引用,而是針對客戶端的組件的引用,比如使用bower管理,就會提供一個bower文件夾,里面包含了引用的組件的版本信息,類似於nuget。

 

7.新增project.json

我認為這是最大的變化,之前程序集的引用都是使用nuget提供的packages.config文件來管理依賴的組件,現在都轉移到了project.json的dependencies節點中。

project.json的作用不僅僅是管理依賴的程序集,還可以設置目標框架版本、編譯、發布選項等。

 


免責聲明!

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



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