3dwoo大學簡體電腦書店
ASP.NET Core 3從入門到實戰
( 簡體 字)
作者:校寶在線 肖偉宇 翁琳鼎 王斌 厲紅兵類別:1. -> 程式設計 -> .NET -> ASP.NET
出版社:機械工業出版社ASP.NET Core 3從入門到實戰 3dWoo書號: 54225
詢問書籍請說出此書號!
有庫存
NT售價: 395
出版日:12/1/2020
頁數:284
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 字 )
ISBN:9787111669845 加入購物車加到我的最愛 (請先登入會員)
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社)
第1章 為什么選擇ASP.NET Core 1
1.1 什么是.NET 1
1.2 ASP.NET Core的特點 3
1.3 讀者能從本書學到什么 4
第2章 ASP.NET Core開發工具安裝 6
2.1 .NET Core SDK安裝 6
2.1.1 獲取.NET Core SDK 6
2.1.2 安裝.NET Core SDK 7
2.2 Visual Studio Code安裝 7
2.2.1 獲取Visual Studio Code 8
2.2.2 安裝Visual Studio Code 8
2.2.3 更新Visual Studio Code 10
2.3 Visual Studio 2019安裝 10
2.3.1 確保計算機可以安裝Visual Studio 10
2.3.2 獲取 Visual Studio 11
2.3.3 安裝Visual Studio安裝程序 11
2.3.4 啟動安裝程序 12
第3章 ASP.NET Core核心組件詳解 13
3.1 框架總述 13
3.2 依賴注入 14
3.2.1 什么是依賴注入 14
3.2.2 依賴注入組件 15
3.2.3 服務描述類ServiceDescriptor 16
3.2.4 IServiceCollection與服務注冊 18
3.2.5 通過IServiceProvider獲取服務實例 20
3.2.6 作用域與生命周期 22
3.2.7 IDisposable與生命周期 25
3.2.8 擴展接口IServiceProviderFactory 25
3.2.9 在Controller中獲取服務 28
3.3 配置組件 29
3.3.1 配置組件的構造過程 29
3.3.2 內存配置提供程序 32
3.3.3 命令行配置提供程序 32
3.3.4 環境變量配置提供程序 34
3.3.5 文件配置提供程序 35
3.3.6 Key-per-file配置提供程序 37
3.3.7 使用IConfiguration讀取配置 38
3.3.8 使用強類型接收配置 40
3.4 選項組件 42
3.4.1 選項的注入與使用 42
3.4.2 使用命名選項 44
3.4.3 驗證選項 46
3.4.4 選項后期配置 47
3.5 中間件 48
3.5.1 注冊中間件 49
3.5.2 常用的內置中間件 51
3.6 路由與終結點 52
3.6.1 注冊終結點 53
3.6.2 路由模板 54
3.6.3 特性路由 55
3.6.4 路由約束 56
3.6.5 生成鏈接 57
第4章 基于MVC設計模式的Web應用 59
4.1 創建第一個ASP.NET Core MVC項目 59
4.2 什么是MVC模式 63
4.3 視圖 64
4.3.1 使用視圖的好處 65
4.3.2 創建視圖 66
4.3.3 利用控制器指定視圖 66
4.3.4 視圖發現 67
4.3.5 向視圖傳遞數據 68
4.3.6 動態視圖 72
4.4 部分視圖 73
4.4.1 何時使用部分視圖 73
4.4.2 聲明部分視圖 73
4.4.3 引用部分視圖 74
4.4.4 呈現部分視圖 75
4.4.5 通過部分視圖訪問數據 76
4.5 控制器 78
4.5.1 什么是控制器 78
4.5.2 Action 79
4.5.3 橫切關注點 80
4.6 路由 80
4.6.1 自定義路由 81
4.6.2 混合路由 82
4.6.3 動態路由 82
4.7 區域 85
4.8 篩選器 89
4.8.1 篩選器的工作原理 90
4.8.2 實現 91
4.9 模型綁定器 95
4.9.1 什么是模型綁定 95
4.9.2 目標 96
4.9.3 源 97
4.9.4 不存在模型屬性的源 98
4.9.5 類型轉換錯誤 99
4.9.6 復雜類型 99
4.9.7 集合 101
4.9.8 字典 102
4.9.9 模型綁定路由數據和URL字符串參數的全局行為 102
4.9.10 特殊數據類型 103
4.9.11 輸入格式化程序 103
4.9.12 從模型綁定中排除指定類型 105
4.9.13 手動模型綁定 106
第5章 基于ASP.NET Core的Web API 107
5.1 創建ASP.NET Core的Web API項目 107
5.2 帶有Swagger的Web API幫助頁 111
5.2.1 Swashbuckle.AspNetCore 111
5.2.2 Swagger規范 112
5.2.3 Swagger UI 113
5.3 ASP.NET Core Web API中控制器的返回類型 114
5.3.1 特定類型 114
5.3.2 IActionResult 類型 115
5.3.3 ActionResult 類型 117
5.4 Web API約定 118
5.4.1 應用Web API約定 119
5.4.2 創建Web API約定 120
第6章 ASP.NET Core中的數據庫訪問 122
6.1 Entity Framework Core 122
6.2 安裝并運行MySQL 123
6.2.1 啟動MySQL 125
6.2.2 創建數據庫 125
6.3 數據庫訪問 126
6.3.1 添加數據庫上下文 126
6.3.2 創建控制器 127
6.4 .NET Core Dapper 128
第7章 安全與身份認證 129
7.1 身份認證 129
7.1.1 身份認證處理程序 130
7.1.2 身份認證方案 130
7.1.3 身份認證服務 130
7.1.4 身份認證中間件 131
7.1.5 添加基于策略的身份認證方案 132
7.1.6 用戶信息模型 133
7.1.7 添加自定義身份認證處理程序 133
7.2 授權 135
7.2.1 簡單授權 135
7.2.2 基于角色的授權 136
7.2.3 基于策略的授權 137
7.2.4 授權中間件 137
7.2.5 授權處理程序 138
7.2.6 自定義授權處理程序 139
7.3 集成IdentityServer4 139
7.4 數據保護 141
7.4.1 數據保護入門 142
7.4.2 用戶機密管理 143
7.4.3 小結 143
7.5 強制HTTPS 143
7.5.1 RequireHttpsAttribute 144
7.5.2 HTTPS重定向中間件 144
7.5.3 HTTP嚴格傳輸安全協議 145
7.6 防跨站請求偽造 145
7.6.1 什么是跨站請求偽造 146
7.6.2 同步令牌模式 146
7.7 防開放重定向攻擊 147
7.8 防跨站腳本 148
7.8.1 防范跨站腳本攻擊 149
7.8.2 使用Razor的HTML編碼 149
7.8.3 使用Razor的JavaScript編碼 149
7.8.4 小結 150
7.9 跨域請求 150
7.9.1 跨域資源共享 150
7.9.2 啟用CORS中間件 150
7.9.3 配置需要CORS的資源路徑 152
7.9.4 小結 152
第8章 基于SignalR開發實時通信應用 153
8.1 基于SignalR的實時通信 153
8.1.1 數據交互傳輸 153
8.1.2 Hub中心 154
8.2 服務端實現 155
8.2.1 創建和使用Hub 155
8.2.2 啟用SignalR 155
8.2.3 上下文對象Context 156
8.2.4 Clients對象 156
8.2.5 向客戶端發送消息 157
8.2.6 處理連接事件 158
8.2.7 用戶和組 158
8.2.8 服務的可擴展實現 159
8.3 客戶端實現 160
8.3.1 創建connection對象 160
8.3.2 使用on添加客戶端方法 160
8.3.3 使用start開始連接服務端 160
8.3.4 使用invoke調用服務端方法 161
8.3.5 自動連接 161
8.3.6 手動重連 163
第9章 基于Blazor的Web客戶端技術 164
9.1 Blazor的應用模型 165
9.2 創建項目 166
9.3 頁面路由 169
9.4 數據綁定 171
9.5 組件 172
9.5.1 模板化組件 172
9.5.2 組件庫 174
9.6 狀態管理 176
第10章 日志與監控 181
10.1 日志組件 181
10.1.1 日志類別 183
10.1.2 日志級別 184
10.1.3 日志對象與依賴注入 185
10.1.4 事件ID 186
10.1.5 使用日志模板 187
10.1.6 日志作用域 188
10.1.7 篩選日志輸出 192
10.2 健康檢查組件 193
10.2.1 注冊健康檢查 194
10.2.2 配置健康檢查終結點 196
10.2.3 自定義健康檢查項 198
10.2.4 檢查結果發布器 199
第11章 遠程調用 201
11.1 使用HttpClient調用遠程API 201
11.1.1 構造HttpClient 201
11.1.2 發出請求 203
11.1.3 設置代理 204
11.1.4 處理Cookie 204
11.2 使用HttpClientFactory機制管理HttpClient 205
11.2.1 注冊并使用HttpClientFactory 205
11.2.2 使用命名客戶端 207
11.2.3 使用類型化客戶端 208
11.2.4 使用ConfigureHttpClient 209
11.2.5 使用ConfigurePrimaryHttpMessageHandler 210
11.2.6 理解生命周期 211
11.2.7 HTTP請求管道 212
11.2.8 使用ConfigureHttpMessageHandlerBuilder 213
11.2.9 關于請求日志 214
11.3 使用gRPC實現高性能遠程調用 215
11.3.1 定義接口描述 216
11.3.2 配置服務端 217
11.3.3 配置客戶端 219
11.3.4 使用dotnet-grpc命令行工具管理 .proto 文件引用 220
第12章 部署ASP.NET Core應用 222
12.1 部署到IIS中 222
12.1.1 概述 222
12.1.2 下載和安裝ASP.NET Core模塊 223
12.1.3 部署到IIS 站點 224
12.2 部署為Windows Service 227
12.2.1 配置應用 227
12.2.2 安裝和運行服務 228
12.3 部署到Linux中 228
12.3.1 安裝.NET運行時 228
12.3.2 部署應用 229
12.3.3 反向代理 230
12.4 部署到Docker中 231
12.4.1 Docker簡介 231
12.4.2 Docker術語 231
12.4.3 生成和制作Dockerfile 232
12.4.4 生成鏡像 233
12.4.5 部署鏡像 234
12.5 高可用架構 234
12.5.1 概述 234
12.5.2 應用本身的高可用保障 235
第13章 ASP.NET Core高級內容 236
13.1 文件提供程序 236
13.1.1 訪問本地物理文件系統 237
13.1.2 監視文件的變化 237
13.2 請求功能接口 238
13.3 URL重寫 239
13.3.1 重寫規則 239
13.3.2 IRule接口 241
13.3.3 小結 242
13.4 緩存 242
13.4.1 緩存標記幫助程序 242
13.4.2 內存緩存和分布式緩存 243
第14章 結合ML.NET實現機器學習應用 245
14.1 機器學習簡介 245
14.1.1 什么是機器學習 245
14.1.2 機器學習的作用 246
14.1.3 機器學習的分類 247
14.1.4 機器學習的典型步驟 247
14.2 ML.NET 簡介 248
14.3 ML.NET特色功能 249
14.4 ML.NET開發環境搭建 252
14.4.1 安裝ML.NET庫 252
14.4.2 安裝Microsoft.ML.TimeSeries與Microsoft.ML.AutoML 253
14.4.3 安裝ML.NET模型生成器 254
14.4.4 安裝ML.NET命令行接口工具 254
14.5 ML.NET快速上手 255
14.5.1 構建模型階段 256
14.5.2 使用模型階段 256
14.6 ML.NET與ONNX實踐 259
14.6.1 準備事項 260
14.6.2 創建控制臺應用程序 260
14.6.3 準備數據和預訓練的模型 260
14.6.4 定義輸入和輸出數據結構 261
14.6.5 定義評分預測類 261
14.6.6 使用模型進行分析和輸出 266
第15章 更多的學習途徑 270
15.1 .NET Core的學習途徑 270
15.2 其他需要關注的技術 271
在Web應用研發領域容器編排、微服務、服務網格等先進架構已大行其道的今天,本書作為ASP.NET Core的入門教程,可以讓廣大開發人員在自己的技能列表里添加上這個關鍵項。本書從ASP.NET Core的核心組件入手,延伸到MVC、WebAPI、SignalR(實時通信應用)、Blazor(wasm應用)、機器學習等多種應用開發,全方位地講解ASP.NET Core的應用場景、開發實踐和部署發布,帶領讀者學習從開發到發布基于ASP.NET Core項目的全過程。
本書主要針對的是對C#語法和Web開發有一定了解、期望使用C#語言開發Web項目的初學者,也可以是具有ASP.NET MVC開發經驗、希望通過ASP.NET Core提升跨平臺和容器化開發能力的開發者。
pagetop