ASP.NET Core 是一个新的开源跨平台框架,用于构建Web应用、IoT应用和移动后端应用。ASP.NET Core应用程序可以运行于 .NET Core 和完整的 .NET Framework 之上。你可以在 Windows、Mac 和 Linux 上跨平台地开发和运行 ASP.NET Core 应用程序。
ASP.NET Core架构上有许多变化,这些变化使其成为一个更为精简并且模块化的框架。 ASP.NET Core不再基于System.Web.dll,而是基于一系列颗粒化的,并且有良好构建的 NuGet 包。这允许你通过只包含需要的NuGet包来优化你的应用程序。 较小的应用程序使用面的好处包括更可靠的安全性,精简的服务,优越的性能,并使用“为你使用的付出”模型降低成本。
ASP.NET Core 是一个新的开源和跨平台的框架,用于构建如 Web 应用、物联网(IoT)应用和移动后端应用等连接到互联网的基于云的现代应用程序。ASP.NET Core 应用可运行于 .NET Core 和完整的 .NET Framework 之上。构建它的目的是为那些部署在云端或者内部运行的应用提供一个优化的开发框架。它由最小开销的模块化的组件构成,因此在构建解决方案的同时可以保持灵活性。我们可以在 Windows、Mac 和 Linux 上跨平台的开发和运行自己的ASP.NET Core 应用。ASP.NET Core 开源在GitHub(https://github.com/aspnet/home)上。
本书对ASP.NET Core 进行了全面讲解,包括ASP.NET Core 的Web 框架以及ASP.NET Core MVC 学习等,并从零开始讲解一个完整的ASP.NET Core 项目开发及发布部署,带你走进ASP.NET Core 跨平台开发的世界。
全书共分11 章,内容如下:
第1章 NET Core。本章介绍了.NET Core 的基础知识以及.NET Core SDK 下载安装。
第2章 dotnet 命令。本章详细介绍了dotnet 命令语法及dotnet 命令实战。
第3章 VS Code 开发.NET Core。本章详细介绍了VS Code 安装和开发调试.NET Core 应用,以及VS Code C#插件配置介绍。
第4章 VS 2015 开发.NET Core。本章详细介绍了VS 2015 安装及开发.NET Core 应用。
第5章 ASP.NET Core。本章详细介绍了ASP.NET Core 及内置功能组件。
第6章 EF Core。本章详细介绍了EF Core 的两种使用:Database First 和Code First。
第7章 ASP.NET Core MVC。本章详细介绍了框架中的路由、模型、视图、控制器及新加入的视图组件标签助手等,以及依赖注入的使用。
第8章 ASP.NET Core Web API。本章详细介绍了Web API,自定义格式化。
第9章 单元测试。本章详细介绍了单元测试及xUnit.net 实战 MSTest 实战,测试控制器逻辑。
第10章 项目实战NetNote 系统。本章详细介绍了从零开始开发NetNote 系统的流程和方法,其中包含EF Core、Identity、以及中间件的开发使用。
第11章 跨平台发布及部署。本章详细介绍了.NET Core 依赖框架部署及独立部署发布,部署至Ubuntu、CentOS 系统以及Docker 部署和IIS 部署。
希望读者在阅读完本书后,能够了解ASP.NET Core 的基础及原理,学会使用ASP.NET Core开发简单的应用程序,并能将ASP.NET Core开发的应用程序部署至不同的系统中运行,实现ASP.NET Core 的跨平台应用。
由于作者水平有限,书中疏漏之处在所难免,恳请读者批评指正。
第1 章 .NET Core .......................................................................................................... 1
1.1 .NET Core 介绍 ...................................................................................................... 1
1.2 .NET Core 跨平台 .................................................................................................. 3
1.3 .NET Core SDK 下载安装 ..................................................................................... 3
第2 章 dotnet 命令 ......................................................................................................... 5
2.1 dotnet 命令介绍 ..................................................................................................... 5
2.2 dotnet-new .............................................................................................................. 6
2.3 dotnet-restore .......................................................................................................... 7
2.4 dotnet-run ................................................................................................................ 8
2.5 dotnet-build ........................................................................................................... 10
2.6 dotnet-test ............................................................................................................. 11
2.7 dotnet-pack ........................................................................................................... 14
2.8 dotnet-publish ....................................................................................................... 15
2.9 dotnet 命令实战 ................................................................................................... 17
第3 章 VS Code 开发.NET Core .................................................................................. 25
3.1 VS Code 安装及介绍 ........................................................................................... 25
3.2 VS Code 开发调试.NET Core ............................................................................. 26
3.3 VS Code C#插件配置介绍 .................................................................................. 30
第4 章 VS 2015 开发.NET Core .................................................................................. 32
4.1 VS 2015 安装及介绍 ........................................................................................... 32
4.2 VS 2015 新建应用 ............................................................................................... 33
VI ∣ ASP.NET Core 跨平台开发从入门到实战
第5 章 ASP.NET Core .................................................................................................. 34
5.1 ASP.NET Core 介绍 ............................................................................................. 34
5.2 Application Startup ............................................................................................... 38
5.3 中间件 .................................................................................................................. 42
5.4 静态文件 .............................................................................................................. 51
5.5 配置文件 .............................................................................................................. 63
5.6 日志(Logging) ................................................................................................. 70
5.7 依赖注入DI ......................................................................................................... 83
5.8 多环境 .................................................................................................................. 95
5.9 应用程序状态(Session) .................................................................................. 99
5.10 程序缓存(Caching) ..................................................................................... 109
第6 章 EF Core .......................................................................................................... 113
6.1 EF Core 介绍 ...................................................................................................... 113
6.2 Code First ........................................................................................................... 115
6.3 Database First ..................................................................................................... 122
第7 章 ASP.NET Core MVC ....................................................................................... 129
7.1 ASP.NET Core MVC 介绍 ................................................................................. 129
7.2 路由(Routing) ............................................................................................... 131
7.3 模型(Model) .................................................................................................. 156
7.4 视图(View) .................................................................................................... 165
7.5 布局(Layout) ................................................................................................. 171
7.6 标签助手(Tag Helpers) ................................................................................. 177
7.7 局部视图(Partial Views) ............................................................................... 190
7.8 视图组件(View Component) ........................................................................ 194
7.9 控制器(Controller)与Action 以及Action Result ........................................ 199
7.10 过滤器(Filter) .............................................................................................. 201
7.11 依赖注入View ................................................................................................. 212
7.12 依赖注入Controller ......................................................................................... 218
7.13 区域(Areas) ................................................................................................. 223
目 录 ∣ VII
第8 章 ASP.NET Core Web API ................................................................................. 228
8.1 Web API 介绍 ..................................................................................................... 228
8.2 自定义格式化(Format) ................................................................................. 232
第9 章 单元测试 ......................................................................................................... 240
9.1 单元测试介绍 .................................................................................................... 240
9.2 单元测试实战xUnit.net .................................................................................... 240
9.3 单元测试实战MSTest ....................................................................................... 246
9.4 测试控制器逻辑 ................................................................................................ 250
第10 章 项目实战NetNote 系统 ................................................................................. 258
10.1 新建项目 .......................................................................................................... 258
10.2 添加及查看 ...................................................................................................... 263
10.3 分类和分页 ...................................................................................................... 269
10.4 密码查看附件上传 .......................................................................................... 276
10.5 Web API ............................................................................................................ 282
10.6 Basic 基本认证中间件..................................................................................... 285
10.7 用户登录 .......................................................................................................... 289
10.8 数据库切换 ...................................................................................................... 295
第11 章 跨平台发布及部署 ......................................................................................... 298
11.1 发布和部署 ...................................................................................................... 298
11.2 部署至Ubuntu 系统 ......................................................................................... 303
11.3 部署至CentOS 系统 ........................................................................................ 306
11.4 部署至Docker .................................................................................................. 311
11.5 部署至IIS ......................................................................................................... 313