推荐阅读
  • 从 .NET Framework 移植到 .NET Core

    本文内容 你可能有些代码当前正在 .NET Framework 上运行,但你想将这些代码移植到 .NET Core。 本文提供以下内容:移植过程概述。在将代码移植到 .NET Core 时,可能会发现一系列有用的工具。移植过程概述针对多个项目从 .N

  • ASP.NET Core 入门

    ASP.NET 文档 了解如何使用 ASP.NET Core 创建快速、安全、跨平台和基于云的 Web 应用和服务。 浏览教程、示例代码、基础知识、API 参考和更多内容。

  • 通过 MSTest 进行单元测试

    本文内容 本教程介绍分步构建示例解决方案的交互式体验,以了解单元测试概念。 如果希望使用预构建解决方案学习本教程,请在开始前查看或下载示例代码。 有关下载说明,请参阅示例和教程。本文介绍如何测试 .NET Core 项目。 如果要测试 ASP.NET Core

  • 开发 ASP.NET Core MVC 应用

    “第一次是否正确完成并不重要。 最后一次正确完成才至关重要。” — Andrew Hunt 和 David Thomas

  • 新变化 ASP.NET Core 文档新增内容

    ASP.NET Core 文档新增内容 欢迎了解 ASP.NET Core 文档中的新增内容。使用本页可快速查找最新更改。 查找 ASP.NET Core 文档更新 新变化

  • 部署 ASP.NET Core web 应用

    本文内容 本快速入门介绍如何创建第一个 ASP.NET Core Web 应用并将其部署到 Azure 应用服务。完成后,你将获得一个 Azure 资源组,其中包含一个应用服务托管计划,以及一个部署了 Web 应用程序的

  • .NET Core SDK 和运行时依赖项

    备注 + 表示最低版本。

  • .NET Core 和 .NET Standard 中的单元测试

    备注 ASP.NET 团队遵循这些约定帮助开发人员为测试类和方法提供合适的名称。

  • 开始使用 创建第一个实时 Web 应用

    本文内容 本教程介绍使用 SignalR 生成实时应用的基础知识。 您将学习如何:创建 Web 项目。添加 SignalR 客户端库。创建 SignalR 中心。配置项目以使用 SignalR。添加可将消息从任何客户端发送到所有连接客户端的代码。

  • 测试 ASP.NET Core MVC 应用

    “如果你不喜欢对产品进行单元测试,很可能你的客户也不喜欢这样做。” _- 匿名-

概述 ASP.NET Core 概述

作者:Daniel RothRick AndersonShaun Luttin

ASP.NET Core 是一个跨平台的高性能开源框架,用于生成启用云且连接 Internet 的新式应用。 使用 ASP.NET Core,您可以:

  • 生成 Web 应用和服务、物联网 (IoT) 应用和移动后端。
  • 在 Windows、macOS 和 Linux 上使用喜爱的开发工具。
  • 部署到云或本地。
  • .NET Core 上运行。

为何选择 ASP.NET Core?

数百万开发人员在使用或使用过 ASP.NET 4.x 创建 Web 应用。 ASP.NET Core 是对 ASP.NET 4.x 的重新设计,其中包括体系结构上的更改,产生了更精简、更模块化的框架。

ASP.NET Core 具有如下优点:

使用 ASP.NET Core MVC 生成 Web API 和 Web UI

ASP.NET Core MVC 提供生成 Web APIWeb 应用所需的功能:

客户端开发

ASP.NET Core 与常用客户端框架和库(包括 BlazorAngularReactBootstrap)无缝集成。 有关详细信息,请参阅 ASP.NET Core Blazor 简介 和“客户端开发”下的相关主题。

ASP.NET Core 目标框架

ASP.NET Core 3.x 和更高版本只能面向 .NET Core。 通常,ASP.NET Core 由 .NET Standard 库组成。 使用 .NET Standard 2.0 编写的库在实现 .NET Standard 2.0 的任何 .NET 平台上运行。

面向 .NET Core 有以下几个优势,并且这些优势会随着每次发布增加。 与 .NET Framework 相比,.NET Core 的部分优势包括:

  • 跨平台。 在 Windows、macOS 和 Linux 上运行。
  • 性能更强
  • 并行版本控制
  • 新 API
  • 开源

推荐的学习路径

建议通过以下一系列教程来了解如何开发 ASP.NET Core 应用:

  1. 按照你要开发或维护的应用类型的教程操作:

    应用类型 方案 教程
    Web 应用 新的服务器端 Web UI 开发 Razor Pages 入门
    Web 应用 维护 MVC 应用 MVC 入门
    Web 应用 客户端 Web UI 开发 开始使用 Blazor
    Web API RESTful HTTP 服务 创建 Web API?
    远程过程调用应用 使用协议缓冲区的协定优先服务 开始使用 gRPC 服务
    实时应用 服务器和连接的客户端之间的双向通信 开始使用 SignalR
  2. 按照介绍如何进行基本数据访问的教程操作。

    方案 教程
    新的开发 带 Entity Framework Core 的 Razor 页面
    维护 MVC 应用 结合使用 MVC 和 Entity Framework Core
  3. 阅读适用于所有应用类型的 ASP.NET Core 基础知识的概述。

  4. 浏览目录以了解其他感兴趣的主题。

?此外,还提供了一个交互式 Web API 教程 无需在本地安装开发工具。 代码在浏览器中的 Azure Cloud Shell 中运行,并且 curl 用于测试。

从 .NET Framework 迁移

有关将 ASP.NET 4.x 应用迁移到 ASP.NET Core 的参考指南,请参阅 从 ASP.NET 迁移到 ASP.NET Core

ASP.NET Core 是一个跨平台的高性能开源框架,用于生成启用云且连接 Internet 的新式应用。 使用 ASP.NET Core,您可以:

为何选择 ASP.NET Core?

数百万开发人员在使用或使用过 ASP.NET 4.x 创建 Web 应用。 ASP.NET Core 是对 ASP.NET 4.x 的重新设计,通过体系结构上的更改,产生了更精简、更模块化的框架。

ASP.NET Core 具有如下优点:

使用 ASP.NET Core MVC 生成 Web API 和 Web UI

ASP.NET Core MVC 提供生成 Web APIWeb 应用所需的功能:

客户端开发

ASP.NET Core 与常用客户端框架和库(包括 BlazorAngularReactBootstrap)无缝集成。 有关详细信息,请参阅 ASP.NET Core Blazor 简介 和“客户端开发”下的相关主题。

面向 .NET Framework 的 ASP.NET Core

ASP.NET Core 2.x 可以面向 .NET Core 或 .NET Framework。 面向 .NET Framework 的 ASP.NET Core 应用无法跨平台,它们仅在 Windows 上运行。 通常,ASP.NET Core 2.x 由 .NET Standard 库组成。 使用 .NET Standard 2.0 编写的库在实现 .NET Standard 2.0 的任何 .NET 平台上运行。

ASP.NET Core 2.x 在实现 .NET Standard 2.0 的 .NET Framework 版本上受支持:

  • 建议使用最新版本的 .NET Framework。
  • .NET Framework 4.6.1 及更高版本。

ASP.NET Core 3.0 以及更高版本只能在 .NET Core 中运行。 有关此更改的详细信息,请参阅 A first look at changes coming in ASP.NET Core 3.0(抢先了解 ASP.NET Core 3.0 即将推出的更改)。

面向 .NET Core 有以下几个优势,并且这些优势会随着每次发布增加。 与 .NET Framework 相比,.NET Core 的部分优势包括:

  • 跨平台。 在 macOS、Linux 和 Windows 上运行。
  • 性能更强
  • 并行版本控制
  • 新 API
  • 开源

为了帮助缩小从 .NET Framework 到 .NET Core 的 API 差距,Windows 兼容包使数千个仅可在 Windows 中运行的 API 可在 .NET Core 中使用。 这些 API 在 .NET Core 1.x 中不可用。

推荐的学习路径

建议通过以下一系列教程和文章来了解如何开发 ASP.NET Core 应用:

  1. 按照你要开发或维护的应用类型的教程操作。

    应用类型 方案 教程
    Web 应用 用于新的开发 Razor Pages 入门
    Web 应用 用于维护 MVC 应用 MVC 入门
    Web API 创建 Web API?
    实时应用 开始使用 SignalR
  2. 按照介绍如何进行基本数据访问的教程操作。

    方案 教程
    用于新的开发 带 Entity Framework Core 的 Razor 页面
    用于维护 MVC 应用 结合使用 MVC 和 Entity Framework Core
  3. 阅读适用于所有应用类型的 ASP.NET Core 基础知识的概述。

  4. 浏览目录以了解其他感兴趣的主题。

?此外,还提供了一个 Web API 教程,需要在浏览器中完全遵循,无需在本地安装 IDE。 代码在 Azure Cloud Shell 中运行,并且 curl 用于测试。

从 .NET Framework 迁移

有关将 ASP.NET 应用迁移到 ASP.NET Core 的参考指南,请参阅 从 ASP.NET 迁移到 ASP.NET Core

如何下载示例

很多文章和教程中都包含有示例代码链接。

  1. 下载 ASP.NET 存储库 zip 文件
  2. 解压缩 Docs-master.zip 文件。
  3. 使用示例链接中的 URL 帮助你导航到示例目录。

示例代码中的预处理器指令

为了演示多个方案,示例应用使用 #define#if-#else/#elif-#endif 预处理器指令选择性地编译和运行示例代码中不同的片段。 对于那些利用此方法的示例,请将 C# 文件顶部的 #define 指令设置为定义与你想要运行的方案相关联的符号。 一些示例要求在多个文件的顶部定义符号才能运行方案。

例如,以下 #define 符号列表指示四个方案可用(每个符号一个方案)。 当前示例配置运行 TemplateCode 方案:

#define TemplateCode // or LogFromMain or ExpandDefault or FilterInCode

若要更改示例以运行 ExpandDefault 方案,请定义 ExpandDefault 符号并保留剩余的符号处于被注释掉的状态:

#define ExpandDefault // TemplateCode or LogFromMain or FilterInCode

若要详细了解如何使用 C# 预处理器指令选择性地编译代码段,请参阅 #define(C# 参考)#if(C# 参考)

示例代码中的区域

一些示例应用包含由 #region#endregion C# 指令包围的代码片段。 文档生成系统会将这些区域注入到所呈现的文档主题中。

区域名称通常包含“代码段”一词。 下面的示例显示了一个名为 snippet_WebHostDefaults 的区域:

#region snippet_WebHostDefaults
Host.CreateDefaultBuilder(args)
    .ConfigureWebHostDefaults(webBuilder =>
    {
        webBuilder.UseStartup<Startup>();
    });
#endregion

主题的 Markdown 文件在以下行中引用了前面的 C# 代码片段:

[!code-csharp[](sample/SampleApp/Program.cs?name=snippet_WebHostDefaults)]

可放心忽略(或删除)代码两侧的 #region#endregion 指令。 如果计划运行主题中所述的示例方案,请不要更改这些指令中的代码。 试用其他方案时,可随时更改代码。

有关详细信息,请参阅参与 ASP.NET 文档:代码片段

后续步骤

有关更多信息,请参见以下资源:

关于我们 免责声明 联系我们
Copyright © 2021 爱学习网 浙ICP备18049359号 网站地图 Google地图