MicrosoftMVPDinoEsposito教会你如何:
◆创建新项目并理解其结构
◆在ASP.NETCore中设置和使用熟悉的MVC应用程序模型
◆编写控制器类代码来控制请求处理的所有阶段
◆从控制器提供HTML,或者直接通过Razor页面提供HTML
◆掌握Razor语言,以快速定义HTML视图的布局
◆设计高效的数据访问,并为读写数据选择合适的选项
◆构建ASP.NETCoreWebAPI来返回JSON、XML或其他数据
◆使用数据绑定,以编程方式更新可视化组件
◆为iOS和Android构建对设备友好的Web视图
◆探讨全新的ASP.NETCore运行时环境和依赖注入(DI)基础设施
前言
ASP.NETCore发展历程的某些方面让我想起了15年前ASP.NET刚问世的时候。1999年秋天,当时还很年轻的ScottGuthrie——现在担任Microsoft的副总裁——在伦敦向一小群Web开发人员展示了一个被称为ASP+的新东西。当时还是ActiveServerPages居于统治地位的时代,ASP+试图引入一种新语法,将VBScript代码放回服务器,并用一种编译语言来表达这种语法。ASP+是一项重大的成就。
Scott进行展示时,公众还不知道有.NET,它要到第二年夏天才会正式公布。Scott在一个独立的运行环境中进行演示(演示内容包括一个令人惊叹的WebService示例),这个运行时环境基于一个能够监听端口80的自定义工作进程(一个控制台应用程序)。最早的演示使用了普通的VisualBasic和C++代码,以及Win32API。很快,ASP+被吸收到了新的.NETFramework中,并最终蜕变为ASP.NET。
ASP.NETCore在一开始被展示时,同样作为一个新的独立框架,这是一个从头编写的框架,将Microsoft的Web堆栈的可扩展性和性能提升到了新高度。但在这个过程中,ASP.NETCore的开发团队看到了一个诱人的机会来让ASP.NETCore框架在多个平台上可用。为实现这个目标,必须使.NETFramework的一个子集在目标平台上可用,这意味着必须创建一个新的.NETFramework。最终,一个新的.NETFramework被开发出来了。
虽然ASP.NET和ASP.NETCore的发展过程在关键方面可能看上去是相同的,但是它们的发展环境有很大区别。ASP.NET之前的Web是新生阶段的Web,可扩展的服务器端技术有限,而且可扩展性并不像今天这样是一个严峻的问题。同时,有大量应用程序需要针对Web重写,只是在等待由可靠的供应商提供的一个可靠的平台。
如今,即使不使用ASP.NETCore,也仍然有许多框架可供使用。但是,ASP.NETCore并不只是前端技术;它也是后端技术、WebAPI以及要独立部署或者部署到ServiceFabric的小型简洁的Web(容器化)整体式应用程序。ASP.NETCore还可以用在多个硬件/软件平台上。
很难说在近期甚至目前,ASP.NETCore会不会成为每个公司和团队必须使用的技术。但可以肯定,ASP.NETCore是ASP.NET开发人员需要了解的一种技术,是在多种平台上进行Web开发时可供使用的另一种全栈解决方案。
《ASP.NETCore开发实战》面向的读者对象
完全的新手(至少是对Web开发没有一点了解的新手)不适合阅读《ASP.NETCore开发实战》。《ASP.NETCore开发实战》针对的是ASP.NET开发人员,尤其是具有MVC背景的ASP.NET开发人员。同时,《ASP.NETCore开发实战》适合有丰富开发经验的Web开发人员,特别是具有MVC开发背景但是新接触ASP.NET的Web开发人员。虽然ASP.NETCore是一种全新的框架,但是它与ASP.NETMVC有许多共同点,与WebForms也有少量共同点。
如果读者使用Microsoft技术或者计划使用Microsoft技术,那么对于全栈开发,ASP.NETCore提供了一个出色的选择,包括与Azure云紧密结合起来。
《ASP.NETCore开发实战》的假定
《ASP.NETCore开发实战》假定读者对Microsoft堆栈(其他平台也可以)上的Web开发有基本了解,最好有成熟的理解。
《ASP.NETCore开发实战》不适合的读者对象
如果读者是Web编程的新手,从来没有听说过ASP.NET,想要寻找一本ASP.NETCore的分步骤指南,那么《ASP.NETCore开发实战》可能不是一个理想选择。
《ASP.NETCore开发实战》结构
《ASP.NETCore开发实战》分为5个部分。
●第I部分概述ASP.NETCore的基础知识,并介绍hello-world应用程序。
●第III部分介绍一些公共的开发问题,如身份验证、配置和数据访问。
●第IV部分介绍用于构建可用的、有效的表示层的技术和其他框架。
●第V部分介绍运行时管道、部署和迁移策略。
系统需求
要完成《ASP.NETCore开发实战》的练习,需要配备下面列出的硬件和软件:
●Windows7或更高版本,macOS10.12或更高版本。
●VisualStudio2015或更高版本的任意版本;VisualStudioCode。
●Internet连接,以下载软件或者章节示例。
代码示例下载
勘误、更新和图书支持
我们已经尽最大努力来确保《ASP.NETCore开发实战》及其配套内容的准确性。在以下网址,可以查阅《ASP.NETCore开发实战》的更新列表,其中列举了提交的勘误及对应的更正:
如果读者发现了列表中没有列出的错误,请在该页面上把错误提交给我们。
如果需要额外的支持,请给MicrosoftPressBookSupport发送邮件,地址为mspinput@microsoft.com。