內容簡介
《ASP.NET Core項目開發實戰入門》共14章,介紹了ASP.NET Core基礎及項目開發方面的知識。主要內容有.NET Core基礎知識、ASP.NET Core開發工具的使用、ASP.NET Core的原理和特性、Razor頁面、MVC、Blazor、EF Core、Dapper、ASP.NET Core Web API、SignalR、gRPC、身份驗證、NetNote系統等。除此之外,還從零開始講解一個完整的ASP.NET Core Razor頁面項目的開發、發布及部署,帶領讀者走進ASP.NET Core項目開發。使用ABP框架創建了一個圖書管理項目,深入源碼了解其原理和思想。最後詳細介紹了ASP.NET Core的一些優秀開源項目,供讀者在其他項目中借鑑和使用。
圖書目錄
第1 章 ASP.NET Core1
1.1 為何使用ASP.NET Core1
1.2 使用ASP.NET Core MVC生成Web API和Web UI 2
1.3 面向.NET Framework 的ASP.NET Core2
1.4 ASP.NET Core 與ASP.NET 4.x 的區別3
1.5 ASP.NET Core 的主要開源框架3
第2 章 .NET Core5
2.1 .NET Core 特性5
2.2 .NET Core 支持的跨平台8
2.3 安裝SDK10
2.4 命令行11
2.4.1 dotnet 命令介紹11
2.4.2 dotnet 命令實戰12
第3 章 .NET Standard16
3.1 .NET Standard介紹16
3.1.1 版本17
3.1.2 規範18
3.1.3 .NET Framework 兼容性模式19
3.1.4 .NET Standard 庫和Visual Studio20
3.1.5 .NET Standard 圖解20
3.2 .NET Standard 2.020
3.3 .NET Standard 2.122
第4 章 ASP.NET Core項目入門24
4.1 項目創建流程24
4.2 開發工具26
第5 章 ASP.NET Core Web 套用29
5.1 基礎知識29
5.1.1 主機29
5.1.2 主機提供的服務31
5.1.3 主機配置33
5.1.4 Startup34
5.1.5 中間件35
5.1.6 配置36
5.1.7 依賴注入40
5.1.8 環境44
5.1.9 日誌45
5.1.10 錯誤處理47
5.1.11 靜態檔案48
5.2 Razor 頁面50
5.2.1 創建Razor Pages Web 套用51
5.2.2 開發書籍管理系統52
5.2.3 Razor 頁面的理論知識73
5.3 MVC85
5.3.1 創建MVC 套用85
5.3.2 項目開發86
5.3.3 MVC 介紹96
5.4 Blazor 103
5.4.1 創建Blazor 套用103
5.4.2 項目開發108
5.4.3 Blazor 介紹114
第6 章 數據訪問126
6.1 EF Core126
6.1.1 入門128
6.1.2 模型137
6.1.3 查詢157
6.1.4 保存162
6.2 Dapper165
6.2.1 新建項目166
6.2.2 增刪查改實現166
6.2.3 源碼解析168
第7 章 ASP.NET Core Web API 171
7.1 Web API171
7.1.1 新建Web API172
7.1.2 實現Web API173
7.2 Swagger 179
第8 章 SignalR 185
8.1 實時聊天室186
8.2 橫向擴展191
第9 章 gRPC194
9.1 gRPC 服務端195
9.2 gRPC 客戶端196
9.3 雙向通信199
9.4 gRPC 與Web API 的功能比較203
9.4.1 gRPC 的優點204
9.4.2 gRPC 的缺點205
9.4.3 gRPC 適合的方案206
第10 章 身份驗證207
10.1 身份驗證介紹207
10.2 Identity210
10.3 IdentityServer4 210
10.3.1 API 訪問控制211
10.3.2 ASP.NET Core OpenID Connect 互動套用217
第11 章 NetNote系統224
11.1 創建新項目224
11.2 實現NetNote 的基本功能228
11.3 分類和分頁233
11.4 密碼及附屬檔案上傳240
11.5 編輯和刪除245
11.6 富文本支持248
11.7 Web API 250
11.8 基本身份驗證中間件254
11.9 身份驗證257
11.10 資料庫初始化及切換268
第12 章 部署實踐271
12.1 部署至Linux 系統271
12.1.1 部署至Ubuntu 系統273
12.1.2 部署至CentOS系統276
12.2 部署至Windows 系統279
12.3 Docker 部署實踐282
12.3.1 NetNote 部署283
12.3.2 Docker 管理285
第13 章 ABP框架287
13.1 ABP 框架介紹287
13.2 基礎知識289
13.2.1 使用命令行創建套用289
13.2.2 線上創建套用290
13.3 圖書管理項目295
13.4 特性及源碼解析323
13.4.1 模組323
13.4.2 多租戶329
13.4.3 事件匯流排334
第14 章 ASP.NET Core開源項目341
14.1 eShopOnWeb(微軟ASP.NET Core 示例項目)341
14.1.1 配置SQL Server 342
14.1.2 解決方案343
14.1.3 eShopOnContainers345
14.2 Orchard Core(CMS管理系統和模組化框架)348
14.2.1 解決方案349
14.2.2 Orchard Core CMS350
14.2.3 Orchard Core Framework352
14.3 AspNetCoreSpa(單頁Web套用)355
14.3.1 解決方案355
14.3.2 源碼解析356
14.4 CleanArchitecture(整潔架構示例)358
14.4.1 解決方案360
14.4.2 整潔架構361
作者簡介
張劍橋,有.NET開發經驗。關注系統架構及微服務,熱衷於.NET跨平台開發和實踐,對.NET Core及ASP.NET Core有深入的研究了解,專注於.NET及.NET Core系統開發與架構。