標籤:
最近加班加點完成一個Web項目,使用Asp.net MVC開發。很久以前接觸的Asp.net開發還是Aspx形式,什麼Razor引擎,什麼MVC還是這次開發才明白,可以算是新手。
對新手而言,那進行Asp.net MVC開發應該提前掌握多少程度的知識點才能暢通無阻進行開發?
下面是這次開發結束後做的一些知識點梳理總結,掌握如下知識點開發大型Asp.net MVC項目將不會有太大問題。知識點總綱
1. 代碼規範好的規範可以讓團隊更加有效率!
- C#代碼規範使用StyleCop檢查代碼
- Sql規範使用工具整形
- JS規範ESLint,JSHint,JSLint工具
- HTML標籤規範
- Resource資源名稱規範_W0001:警告,_E0001:錯誤,_C0001:確認 等
2. 前端View基本上都會用到的知識。
- Razor
- Htmlhelper
- Html+css+div
如果以後走設計道路這方面得加強點。
- image
項目使用到的各類圖片,需要美工設計與切割。
- JS指令碼
- typescript
微軟開源工具,比Javascript先進的指令碼開發。
- javascript
- Jquery
- Microsoft.jQuery.Unobtrusive.Validation
微軟前端控制項檢測指令碼,可以自己擴充。
- ViewModel
- Display
欄位在View中表示名稱,一般綁定Resource檔案內容。
- DataType
欄位對應View中的控制項類型。
- Validation
- Required
入力必須檢測
- StringLength
入力值長度檢測
- regex
入力值Regex檢測
- range
輸入範圍檢測
- 自訂Validaiton
自訂各種檢測規則,繼承ValidationAttribute和IClientValidatable。
- 分頁
做分頁處理是一次性全部Select出來還是,分頁Select出來,這些都是需要衡量資料庫容量的。
- 檢索
對資料進行檢索比較複雜,可以是簡單的模糊比對或者其他等等。
3. 後端對前段的輸入做處理。
- Controller
- FilterAttribute
對Controller或者Action進行制約。
- AuthorizeAttribute
對Controller或者Action進行認證判斷。
- ValidateAntiForgeryTokenAttribute
防止跨站攻擊。
- ActionNameSelectorAttribute
一個View多個Action。
- LogAttribute
寫Controller或者Action的操作Log。
- SessionTimeoutAttribute
Session逾時判斷。
- HandleErrorAttribute
對Controller或者Action的異常進行處理。
-
Action
- ViewResult
- ActionResult
- JsonResult
- Session+TempData+ViewBag+ViewData
資料儲存方式
- PRG
對POST請求的Action處理結束時做Redirect到Get Action。防止使用者F5更新再次提交POST請求導致資料更新或者插入。
- Include
- 資料服務
-
Service
-
Repository
- ORM
- Entity Framework
DB First或者Code First開發模式。EF提供linq to sql和資料集到Model的轉換,效能稍微有些不好。
- Dapper
對Connection擴充,只提供資料集到Model的轉換,效能不錯。
-
Entity
- 異常
-
IIS異常
- Application_Error
- ErrorController
-
Action異常
- Controller.OnException
- HttpAntiForgeryException處理
一般發生Token異常時將挑戰到登陸介面。
- Web.Config customErrors 配置
設定Action發生異常時跳轉到那個錯誤介面。
- Log
-
Service的Log
-
Repository的Log
-
Sql執行的Log
-
Action的Log
通過Filter可以全域設定。
痛點
- JS指令碼
- 自訂Validation
- 異常處理
- 資料處理
Web開發基本就這些知識點,希望能給新手帶來協助!
ASP.NET MVC開發:Web項目開發必備知識點