ASP.NET Core MVC 入门Get started with ASP.NET Core MVC

本文内容

作者:Rick Anderson

本教程介绍具有控制器和视图的 ASP.NET Core MVC Web 开发。如果你是初次接触 ASP.NET Core Web 开发,请考虑本教程的 Razor Pages 版本,此版本提供了更简单的起点。

本教程介绍构建 ASP.NET Core MVC Web 应用的基础知识。

该应用管理电影标题的数据库。您将学习如何:

  • 创建 Web 应用。
  • 添加和构架模型。
  • 使用数据库。
  • 添加搜索和验证。

在结束时,你会获得可以管理和显示电影数据的应用。

查看或下载示例代码如何下载)。

先决条件Prerequisites

Visual Studio Code 说明使用用于 ASP.NET Core 的 .NET Core CLI 开发功能,如项目创建。可在任何平台(macOS、Linux 或 Windows)上或在任何代码编辑器中遵循这些说明。如果使用 Visual Studio Code 以外的其他内容,则可能需要进行少量更改。

创建 Web 应用Create a web app

  • 在 Visual Studio 中,选择“创建新项目” 。

  • 选择“ASP.NET Core Web 应用程序”,然后选择“下一步” 。

新建 ASP.NET Core Web 应用程序

  • 将项目命名为“MvcMovie”,然后选择“创建” 。将项目命名为“MvcMovie”非常重要,这样在复制代码时,命名空间才会匹配 。

新建 ASP.NET Core Web 应用程序

  • 选择“Web 应用程序(模型-视图-控制器)”,然后选择“创建” 。

“新建项目”对话框,左窗格中的“.NET Core”,ASP.NET Core WebNew project dialog, .NET Core in left pane, ASP.NET Core web

Visual Studio 为刚刚创建的 MVC 项目使用默认模板。输入项目名称并选择几个选项后,就拥有了一个可正常运行的应用。这是一个基本的入门项目。

本教程假定用户熟悉 VS Code。有关详细信息,请参阅 VS Code 入门Visual Studio Code 帮助

  • 打开集成终端

  • 将目录更改为 (cd) 包含项目的文件夹。

  • 运行下面的命令:

  1. dotnet new mvc -o MvcMovie
  2. code -r MvcMovie
  • 一个对话框随即出现,其中包含:“‘MvcMovie’中缺少进行生成和调试所需的资产。 是否添加它们?”选择“是”

  • dotnet new mvc -o MvcMovie:在 MvcMovie 文件夹中创建一个新的 ASP.NET Core MVC 项目 。

  • code -r MvcMovie:在 Visual Studio Code 中加载 MvcMovie.csproj 项目文件 。

  • 选择“文件”>“新建解决方案” 。

macOS 新建解决方案

  • 选择“.NET Core” >“应用” >“Web 应用程序(模型视图控制器)” >“下一步”。

macOS“新建项目”对话框

  • 在“配置新的 ASP.NET Core Web API”对话框中,将目标框架设置为“.NET Core 3.1” 。

macOS .NET Core 3.1 选择

  • 将项目命名为“MvcMovie”,然后选择“创建”。

运行应用Run the app

选择 Ctrl+F5 以在非调试模式下运行应用 。

Visual Studio 会显示以下对话框:

此项目配置为使用 SSL。

如果信任 IIS Express SSL 证书,请选择“是”。

将显示以下对话框:

安全警告对话

如果你同意信任开发证书,请选择“是”。

  • Visual Studio 启动 IIS Express 并运行应用。请注意,地址栏显示 localhost:port#,而不显示 example.com 之类的内容。这是因为 localhost 是本地计算机的标准主机名。Visual Studio 创建 Web 项目时,Web 服务器使用的是随机端口。

  • 使用 Ctrl+F5 启动应用(非调试模式)后,可执行代码更改、保存文件、刷新浏览器和查看代码更改等操作。许多开发人员更喜欢使用非调试模式快速启动应用并查看更改。

  • 可以从“调试” 菜单项中以调试或非调试模式启动应用:

调试菜单

  • 可以通过选择“IIS Express”按钮来调试应用

IIS Express

下图显示该应用:

主页或索引页

按 Ctrl+F5 以在不使用调试程序的情况下运行。

  • 通过运行以下命令来信任 HTTPS 开发证书:
  1. dotnet dev-certs https --trust

上述命令在 Linux 上无效。有关信任证书的详细信息,请参阅 Linux 发行版的文档。

以上命令会显示以下对话:

安全警告对话

  • 如果你同意信任开发证书,请选择“是”。

有关详细信息,请参阅信任 ASP.NET Core HTTPS 开发证书

Visual Studio Code 启动 Kestrel,启动浏览器并导航到 https://localhost:5001地址栏显示 localhost:port:5001,而不是显示 example.com这是因为 localhost 是本地计算机的标准主机名。Localhost 仅为来自本地计算机的 Web 请求提供服务。

使用 Ctrl+F5 启动应用(非调试模式)后,可执行代码更改、保存文件、刷新浏览器和查看代码更改等操作。许多开发人员更喜欢使用非调试模式刷新页面并查看更改。

主页或索引页

选择“运行” > “开始执行(不调试)”以启动应用 。Visual Studio for Mac 启动 Kestrel 服务器,启动浏览器并导航到 http://localhost:port,其中的 port 是随机选择的端口号 。

Visual Studio for Mac 会显示以下弹出窗口:

找不到 HTTPS 开发证书。

如果你信任开发证书,请选择“是”。

将显示以下对话框:

安全警告对话

输入你的密码,然后选择“确定”

如果你同意信任开发证书,请选择“是”。

有关详细信息,请参阅信任 ASP.NET Core HTTPS 开发证书

  • 地址栏显示 localhost:port#,而不是显示 example.com。这是因为 localhost 是本地计算机的标准主机名。Visual Studio 创建 Web 项目时,Web 服务器使用的是随机端口。运行应用时,将看到不同的端口号。

  • 可以从“运行”菜单中以调试或非调试模式启动应用。

下图显示该应用:

主页或索引页

Visual Studio 帮助Visual Studio help

Visual Studio Code 帮助Visual Studio Code help

Visual Studio for Mac 帮助Visual Studio for Mac help

在本教程的下一部分中,你将了解 MVC 并开始撰写一些代码。

下一页

本教程介绍具有控制器和视图的 ASP.NET Core MVC Web 开发。如果你是初次接触 ASP.NET Core Web 开发,请考虑本教程的 Razor Pages 版本,此版本提供了更简单的起点。

本教程介绍构建 ASP.NET Core MVC Web 应用的基础知识。

该应用管理电影标题的数据库。您将学习如何:

  • 创建 Web 应用。
  • 添加和构架模型。
  • 使用数据库。
  • 添加搜索和验证。

在结束时,你会获得可以管理和显示电影数据的应用。

查看或下载示例代码如何下载)。

先决条件Prerequisites

警告

如果使用 Visual Studio 2017,请参阅 dotnet/sdk 问题 #3124,以了解无法与 Visual Studio 一起使用的 .NET Core SDK 版本的信息。

Visual Studio Code 说明使用用于 ASP.NET Core 的 .NET Core CLI 开发功能,如项目创建。可在任何平台(macOS、Linux 或 Windows)上或在任何代码编辑器中遵循这些说明。如果使用 Visual Studio Code 以外的其他内容,则可能需要进行少量更改。

创建 Web 应用Create a web app

  • 在 Visual Studio 中,选择“创建新项目” 。

  • 选择“ASP.NET Core Web 应用程序”,然后选择“下一步” 。

新建 ASP.NET Core Web 应用程序

  • 将项目命名为“MvcMovie”,然后选择“创建” 。将项目命名为“MvcMovie”非常重要,这样在复制代码时,命名空间才会匹配 。

新建 ASP.NET Core Web 应用程序

  • 选择“Web 应用程序(模型-视图-控制器)”,然后选择“创建” 。

“新建项目”对话框,左窗格中的“.NET Core”,ASP.NET Core WebNew project dialog, .NET Core in left pane, ASP.NET Core web

Visual Studio 为刚刚创建的 MVC 项目使用默认模板。输入项目名称并选择几个选项后,就拥有了一个可正常运行的应用。这是一个基本的初学者项目,适合入门使用。

本教程假定用户熟悉 VS Code。有关详细信息,请参阅 VS Code 入门Visual Studio Code 帮助

  • 打开集成终端

  • 将目录更改为 (cd) 包含项目的文件夹。

  • 运行下面的命令:

  1. dotnet new mvc -o MvcMovie
  2. code -r MvcMovie
  • 一个对话框随即出现,其中包含:“‘MvcMovie’中缺少进行生成和调试所需的资产。 是否添加它们?”选择“是”

  • dotnet new mvc -o MvcMovie:在 MvcMovie 文件夹中创建一个新的 ASP.NET Core MVC 项目 。

  • code -r MvcMovie:在 Visual Studio Code 中加载 MvcMovie.csproj 项目文件 。

  • 选择“文件”>“新建解决方案” 。

macOS 新建解决方案

  • 选择“.NET Core” >“应用” >“Web 应用程序(模型视图控制器)” >“下一步”。

macOS“新建项目”对话框

  • 在“配置新的 ASP.NET Core Web API”对话框中,接受默认的 .NET Core 2.2“目标框架” 。

macOS .NET Core 2.2 选择

  • 将项目命名为“MvcMovie”,然后选择“创建”。

运行应用Run the app

选择 Ctrl+F5 以在非调试模式下运行应用 。

Visual Studio 会显示以下对话框:

此项目配置为使用 SSL。

如果信任 IIS Express SSL 证书,请选择“是”。

将显示以下对话框:

安全警告对话

如果你同意信任开发证书,请选择“是”。

  • Visual Studio 启动 IIS Express 并运行应用。请注意,地址栏显示 localhost:port#,而不显示 example.com 之类的内容。这是因为 localhost 是本地计算机的标准主机名。Visual Studio 创建 Web 项目时,Web 服务器使用的是随机端口。

  • 使用 Ctrl+F5 启动应用(非调试模式)后,可执行代码更改、保存文件、刷新浏览器和查看代码更改等操作。许多开发人员更喜欢使用非调试模式快速启动应用并查看更改。

  • 可以从“调试” 菜单项中以调试或非调试模式启动应用:

调试菜单

  • 可以通过选择“IIS Express”按钮来调试应用

IIS Express

  • 选择“接受”以同意跟踪 。此应用不会跟踪个人信息。模板生成的代码包含有助于符合一般数据保护条例 (GDPR) 的资产。

主页或索引页

下图展示了接受跟踪后的应用:

主页或索引页

按 Ctrl+F5 以在不使用调试程序的情况下运行。

  • 通过运行以下命令来信任 HTTPS 开发证书:
  1. dotnet dev-certs https --trust

上述命令在 Linux 上无效。有关信任证书的详细信息,请参阅 Linux 发行版的文档。

以上命令会显示以下对话:

安全警告对话

  • 如果你同意信任开发证书,请选择“是”。

有关详细信息,请参阅信任 ASP.NET Core HTTPS 开发证书

Visual Studio Code 启动 Kestrel,启动浏览器并导航到 https://localhost:5001地址栏显示 localhost:port:5001,而不是显示 example.com这是因为 localhost 是本地计算机的标准主机名。Localhost 仅为来自本地计算机的 Web 请求提供服务。

使用 Ctrl+F5 启动应用(非调试模式)后,可执行代码更改、保存文件、刷新浏览器和查看代码更改等操作。许多开发人员更喜欢使用非调试模式刷新页面并查看更改。

  • 选择“接受”以同意跟踪 。此应用不会跟踪个人信息。模板生成的代码包含有助于符合一般数据保护条例 (GDPR) 的资产。

主页或索引页

下图展示了接受跟踪后的应用:

主页或索引页

选择“运行” > “开始执行(不调试)”以启动应用 。Visual Studio for Mac 启动 Kestrel 服务器,启动浏览器并导航到 http://localhost:port,其中的 port 是随机选择的端口号 。

Visual Studio for Mac 会显示以下弹出窗口:

找不到 HTTPS 开发证书。

如果你信任开发证书,请选择“是”。

将显示以下对话框:

安全警告对话

输入你的密码,然后选择“确定”

如果你同意信任开发证书,请选择“是”。

有关详细信息,请参阅信任 ASP.NET Core HTTPS 开发证书

  • 地址栏显示 localhost:port#,而不是显示 example.com。这是因为 localhost 是本地计算机的标准主机名。Visual Studio 创建 Web 项目时,Web 服务器使用的是随机端口。运行应用时,将看到不同的端口号。

  • 可以从“运行”菜单中以调试或非调试模式启动应用。

  • 选择“接受”以同意跟踪 。此应用不会跟踪个人信息。模板生成的代码包含有助于符合一般数据保护条例 (GDPR) 的资产。

主页或索引页

下图展示了接受跟踪后的应用:

主页或索引页

Visual Studio 帮助Visual Studio help

Visual Studio Code 帮助Visual Studio Code help

Visual Studio for Mac 帮助Visual Studio for Mac help

在本教程的下一部分中,你将了解 MVC 并开始撰写一些代码。

下一页