零、前言

ASP.NET Core 2.0 框架旨在满足当今 web 开发人员的需求。 它提供了更好的控制,对测试驱动开发的支持,以及更清晰的代码。 此外,它是轻量级的,允许你在 Windows、OSX 和 Linux 上运行应用,这使它成为当今开发人员最流行的 web 框架。

这本书遵循一个独特的方法,以网络开发,使用现实世界的例子,指导你通过问题与 ASP.NET Core 2.0 web 应用。 它涵盖了 VS2017 和 ASP.NET Core 2.0 特有的改变,并提供通用的 MVC 开发配方。 它探索了。net Core, Visual Studio 2017, Node.js 模块和 NuGet 的设置。 接下来,介绍如何使用反转控制数据模式和缓存。 我们每天探索 ASP.NET Core MVC 2.0 模式,并超越 asp.net.NET Core MVC 2.0,进入故障排除。 最后,我们将引导您完成代码的迁移、托管和部署。

在这本书的结尾,你不仅已经探索了 ASP 的各个方面.NET Core 2.0,你也会有一个参考,你可以随时回到你需要完成工作。

这本书是给谁的

这本书是为开发人员谁想要学习构建 web 应用,并使一个职业建设 web 应用使用 ASP.NET 的核心。

如果您是编程新手,这本书将向您介绍用于构建现代 web 应用的模式和概念。

这本书也适合那些正在开发其他 web 框架并希望更多地了解 ASP 的人.NET 的核心。

您将学习如何从零开始构建 web 应用; 这本书将给你一个起点,让你可以学习更高级的主题。

这本书的内容

第一章。net Core 跨平台,深入探讨。net Core 是什么,它的核心组件是什么,并创建 ASP.NET Core web 项目使用。NET Core 命令行。

第二章,Visual Studio 2017, c# 6, IDEs 和 Roslyn,涵盖了 Visual Studio 2017, Visual Studio Code 和 Atom 作为 c#编辑器的使用。 此外,我们还将研究 c# 6 附带的新特性,并使用 Roslyn 编译器作为服务。

第三章,与 NPM,前端包管理器和任务运行器一起工作,介绍了如何使用和创建 NPM 模块,以及如何使用 Bower, Grunt, Gulp 和 Yeoman。

第四章通过 NuGet 重用代码,指导你管理 NuGet 包,创建新的 NuGet 包,使用之前创建的包,以及创建一个新的 NuGet 库来私有列出 NuGet 包。

第五章,SOLID Principles, Inversion of Control, and Dependency Injection涵盖了所有 SOLID Principles,以及 ASP 自带的 Ccontrol 和依赖注入库的反转.NET Core 和独立的 NuGet 包。

第六章,Data Access - Entity Framework with Repository, SQL Server, and Stored Procedures,介绍了使用 Entity Framework Core 实现存储库模式。 在实现期间,我们将讨论 IoC 生命周期。 此外,我们将研究实体框架核心的不同提供者。

第 7 章在 Micro orm, NoSQL 和 Azure中,介绍了如何使用 Dapper 和 OrmLite 等库创建数据访问层。 此外,我们将研究 MongoDB、Azure 表存储、Azure blob 存储和 Azure 上的 SQL。

第 8 章,缓存和会话-分布式,服务器和客户端,介绍了几种缓存提供商,如 InMemory 数据缓存,响应缓存,会话缓存和分布式缓存。 我们将在本地和 Azure 上使用 Redis。

第九章,Routing讨论了 ASP 的不同方面.NET 路由机制、路由约束和搜索引擎友好路由。

第十章NET Core MVC,涵盖了 ActionResult 类型、创建和使用 POCO 控制器以及管理异常。

第 11 章、Web API讨论了管理内容协商、处理跨域请求、使用 Swagger 自动记录控制器和操作以及测试操作。

第 12 章、Filters介绍了如何创建、管理和使用 Global Filters 在操作执行之前和之后注入任务,例如日志记录、缓存、认证控制和授权。

第 13 章、视图、模型和 viewmodel,介绍了创建和使用 viewmodel,以及理解和使用 ModelBinding 机制和 ValueProviders。

第 14 章,Razor 和视图讨论了视图,局部视图,区域,HTML 助手,以及视图中的依赖注入。

第 15 章、标签助手和 ViewComponents深入探讨了环境、脚本、表单和链接标签助手的使用。 我们还将创建可重用的 ViewComponents。

第 16 章OWIN 和中间件,介绍了 OWIN 和 Katana。 asp.NET Core 管道和中间件,以及创建和使用 ASP.NET Core 的中间件。

第 17 章,安全,涵盖了认证和授权机制,身份管理,以及使用 ASP 保护数据安全.NET 的核心。

第 18 章前端开发,介绍了如何使用 Bootstrap 类,编写可维护且干净的 JavaScript 代码,并进行调试。 我们将看到 TypeScript 是什么,并为 JavaScript 代码编写单元测试。

第 19 章部署和托管涵盖了托管 ASP。 使用 IIS、Azure 和 Docker 的核心 web 应用。 我们还将托管 ASP.NET web 应用在 Linux、Windows 和 Mac 环境中使用 Kestrel。

从这本书中得到最大的收获

  1. 有一些 web 后端或前端编程经验是有益的。
  2. 你需要安装 Visual Studio 2017、Visual Studio Code、Atom、SQL Server Management Studio 和一个现代的 web 浏览器。 不要担心,我们会在需要时指导您如何安装它们。
  3. 你需要一个活跃的 Azure 订阅。 微软 Azure 平台提供免费试用账号http://www.azure.com

下载示例代码文件

您可以从您的帐户www.packtpub.com下载本书的示例代码文件。 如果您在其他地方购买了这本书,您可以访问www.packtpub.com/support并注册,将文件直接通过电子邮件发送给您。

你可以按以下步骤下载代码文件:

  1. 登录或注册在www.packtpub.com
  2. 选择 SUPPORT 选项卡。
  3. 点击代码下载和勘误表。
  4. 在搜索框中输入书名,并按照屏幕上的说明操作。

下载文件后,请确保使用最新版本的解压或解压缩文件夹:

  • 解压缩的软件/ 7 - zip 窗口
  • Zipeg / iZip UnRarX Mac
  • 7 - zip / PeaZip Linux

该书的代码包也托管在 GitHub 上的https://github.com/PacktPublishing/ASP.NET-MVC-Core-2.0-Cookbook。 在https://github.com/PacktPublishing/中还可以找到丰富的图书和视频目录中的其他代码包。 检查出来!

下载彩色图像

我们还提供了一个 PDF 文件,其中包含了本书中使用的屏幕截图/图表的彩色图像。 你可以在这里下载:https://www.packtpub.com/sites/default/files/downloads/ASP.NETMVCCore2.0Cookbook_ColorImages.pdf

约定使用

本书中使用了许多文本约定。

CodeInText:表示文本中的代码字、数据库表名、文件夹名、文件名、文件扩展名、路径名、虚拟 url、用户输入和 Twitter 句柄。 下面是一个示例:“从命令行运行dotnet new mvc。 这个命令将创建一个新的 ASP.NET Core MVC 项目与包含的文件夹同名。

一段代码设置如下:

public class Person
{
    public class Name {get;set;}
    public Person(){
        Name = "Stephane";
    }
}

当我们希望提请您注意代码块的特定部分时,相关的行或项以粗体显示:

public class Person
{
    public class Name {get;set;}
    public Person(){
        Name = "Stephane";
    }
}

任何命令行输入或输出都写如下:

$ apt-get install nautilus-open-terminal 

$ killall nautilus && nautilus

粗体:表示新词条、重要词汇或在屏幕上看到的词汇。 例如,菜单或对话框中的单词会像这样出现在文本中。 下面是一个例子:“选择订阅”。

Warnings or important notes appear like this. Tips and tricks appear like this.

部分

在这本书中,你会发现几个经常出现的标题(Getting readyHow to do it…How it works…还有更多的…

为了清楚地说明如何完成一个食谱,使用下面这些部分:

准备

本节将告诉您食谱中需要的内容,并描述如何设置食谱所需的任何软件或任何初步设置。

怎么做……

本节包含遵循食谱所需的步骤。

它是如何工作的…

本节通常包括对前一节中所发生的事情的详细解释。

有更多的…

此部分包含关于该食谱的附加信息,以便使您更了解该食谱。

另请参阅

本节提供了有关该菜谱的其他有用信息的有用链接。

取得联系

我们欢迎读者的反馈。

一般反馈:发邮件feedback@packtpub.com,并在邮件主题中提及书名。 如果您对本书的任何方面有任何疑问,请发送电子邮件至questions@packtpub.com

Errata:尽管我们已尽一切努力确保内容的准确性,但错误还是会发生。 如果您在这本书中发现了错误,请向我们报告,我们将不胜感激。 请访问www.packtpub.com/submit-errata,选择您的图书,点击勘误表提交链接,并输入详细信息。

盗版:如果您在互联网上发现我们作品的任何形式的非法拷贝,请提供我们的地址或网址。 请通过copyright@packtpub.com与我们联系,并提供相关材料的链接。

如果你有兴趣成为一名作家:如果你有一个你擅长的话题,并且你有兴趣写作或写一本书,请访问authors.packtpub.com

评论

请留下评论。 一旦你阅读和使用这本书,为什么不在你购买它的网站上留下评论? 潜在的读者可以看到并使用您的公正意见来做出购买决定,我们在 Packt 可以理解您对我们的产品的看法,我们的作者可以看到您对他们的书的反馈。 谢谢你!

有关 Packt 的更多信息,请访问packtpub.com