前言
net core 已經出了很久了,網上的各種框架也很多了,但是沒看到一個很小很輕的框架,基本都是那種啥功能都有,但是我需要的功能只占他們框架的百分之幾,很少很少,所以自己創造一個框架,
因為之前的知識斷層太多了,現在為了擬補這些知識,也是走了不少彎路,現在和一個新手沒啥區別,所以那里寫的不對也請大家諒解,
1.我需要的框架結構是什么樣的?
我在搭建這個框架的時候查閱了很多資料,園子里有很多很多的大佬都已經寫了怎么搭建一個框架,而閱讀最廣泛的是一套DI框架,但是不知道怎么回事園子里面的原文是加密的,打不開,可能是作者不想讓爬蟲爬吧,,
那么我到底需要什么框架呢?
冥思苦想,有幾個要求
- 1.不為現在作業而做一個框架
- 2.通用性高
- 3.簡單易懂
- 4.中小型專案壓力小
然后就隨便畫了一下結構圖

哪我需要做的就是從中轉平臺到資料庫支持這一塊內容,
2 ORM的選擇
我也是第一次學習net core和EF,以前都不懂EF是什么東西,也是通過現在作業學會一點EF的使用,覺得局限性太高了,但是寫一寫簡單的操作還是比較快的,然后看到微軟也發布了 EF Core,查了查資料看看了文章
也在各種ORM對比,結果發現EF Core被人黑的地方就是不能寫sql陳述句,如果不能寫sql陳述句那么就需要使用框架的人掌握linq和 lamuda的程度要很高了,不再是一個簡單的新手小白可以使用的框架,不符合我的要求,
我做事的方式就是先查查能不能解決,不能解決在換別的,結果無意中發現網上已經有大佬做了擴展的cs檔案,保存,那么ORM就確定使用官方的EF Core加大佬的擴展類
3 層級架構
世界上最通用的也是最常用的還是三層架構,誰看見都會用,不需要過多的解釋,就像超級瑪麗 1-1關那樣,
4 資料驗證
上學的時候老師教過我們,客戶端的資訊是不可信,既然前后端分離了,那么前端傳輸過來的資料必然可以被篡改,做一個自己的加密方式可以驗證資料是否被篡改??這個需要思考怎么去實作,
多做幾個資料驗證是沒錯的,至少讓我知道他是怎么把資料弄到資料庫中的
5 資料庫的選擇
現在世界上流行一種新型的資料結構 叫做NoSql,這玩意不是里我太遠,而是是我的一個知識盲區,暫時先不去觸碰他,還是先做傳統的資料庫,那么為什么不支持oracle呢?答案很簡單,既然我要做中小程式,
那么和oracle可能就是不是一條路上,而 Mysql MSSql屬于那種中小企業以及中小型專案常用的資料庫,而SqlLite屬于MSSql類別庫中自帶支持的,
6 介面定義
正統的程式介面回傳值肯定是統一的,不存在那種 A是一種格式,B是一種格式,而是大家都是統一的格式,只有某個key是不同的,而JSON這種資料格式適用于全世界大部分程式需求,那么回傳JSON和請求JSON是必然的了,
7.平臺的選擇
雖然是要搭建框架,但是也要事先學習netcore的基本內容,例如通過查資料知道微軟已經全面支持docker,那么也就是跨平臺可以通過docker去實作和完成,但是在學習期間發現,netcoer webapi也支持自托管和iis托管形式,這也太強大了!
那既然已經都支持這么多情況了,不能讓別人在使用我的框架的時候還要自己引入docker的檔案,我直接編輯好,讓大家直接使用不是更好嗎?每個人都只關注業務就可以了,我真是個小聰明!
8.輔助類
不多說,,誰家專案不做幾個通用輔助類
9.開始搭建初級框架
ok既然已經知道目前自己需要什么,那么就用代碼實作出來,下載個VS2019,隨便創建幾個檔案,然后再把大佬的輔助類拖拽進來,然后在隨便加幾個屬性,完成!

有點糊弄人哈,,,那么下一篇文章詳細說說每個類都是什么意思吧!
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/33212.html
標籤:.NET Core
