从零开始使用.NET Core 3.1构建Web API:开发待办事项应用程序
如果您是 Web API 的新手,这篇文章将为您提供从零开始构建 Web API 的详细指导。我们将使用 .NET Core 3.1 开发一个简单的待办事项应用程序,并通过分步骤的讲解帮助您了解 Web API 的基本原理和实现方法。
本指南分为三个部分:第一部分介绍如何使用 .NET Core 创建 Web API 并通过 Postman 测试;第二部分讲解如何使用 JavaScript 操作 Web API;第三部分则展示如何使用 Bootstrap 4 为应用程序添加设计。如果您对 Bootstrap 4 已经熟悉,或者想使用其他库进行设计,可以跳过第三部分。
什么是 Web API?
在深入了解 Web API 之前,我们先来看看什么是 API(应用程序编程接口)。根据维基百科的定义,API 是一组函数的接口,供开发者访问应用程序、操作系统或其他服务的特定功能或数据。
Web API 是一种 API,它通过 HTTP 协议在 Web 上访问。需要注意的是,Web API 是一个概念,而不是具体的技术。为了使用 Web API,我们需要构建 API 并开发使用该 API 的网站。
创建 Web API 项目
使用命令行创建项目
- 打开集成终端。
- 将目录切换到您希望存放项目文件夹的位置。
- 运行以下命令:
dotnet new webapi -o TodoApi
cd TodoApi
dotnet add package Microsoft.EntityFrameworkCore.SqlServer
dotnet add package Microsoft.EntityFrameworkCore.InMemory
code -r ../TodoApi
上述命令将创建一个名为 TodoApi 的 Web API 应用程序,并添加必要的 SQL Server 和 InMemory 包。当系统提示是否添加所需资产时,选择 是。
使用 Visual Studio 创建项目
- 选择 ASP.NET Core Web 应用程序 模板,然后点击 下一步。
- 将项目命名为
TodoApi,点击 创建。 - 在新建项目对话框中,确认选择了 .NET Core 和 ASP.NET Core 3.1,然后选择 API 模板并点击 创建。
什么是模型类?
模型类表示 MVC 架构中的领域特定数据和业务逻辑。它负责维护应用程序的数据,并将其存储到数据库中。模型类通常位于项目的 Models 文件夹中。
创建模型类
在 Visual Studio 中:
- 在 解决方案资源管理器 中,右键点击项目,选择 添加 > 新建文件夹,将文件夹命名为
Models。 - 右键点击
Models文件夹,选择 添加 > 类,将类命名为TodoItem,然后点击 添加。
在 Visual Studio Code 中:
- 创建一个名为
Models的文件夹。 - 在
Models文件夹中添加一个名为TodoItem.cs的文件,并使用以下代码:
public class TodoItem
{
public long Id { get; set; }
public string Name { get; set; }
public bool IsComplete { get; set; }
}
数据库上下文(DbContext)
数据库上下文是一组对象,用于查询数据库并对其中的更改进行分组。它是 Entity Framework Core 的核心部分,负责与数据库交互。
创建数据库上下文类
在 Visual Studio 中:
- 在
Models文件夹中添加一个名为TodoContext.cs的类。 - 使用以下代码定义
TodoContext:
using Microsoft.EntityFrameworkCore;
namespace TodoApi.Models
{
public class TodoContext : DbContext
{
public TodoContext(DbContextOptions options)
: base(options)
{
}
public DbSet TodoItems { get; set; }
}
}
注册数据库上下文
在 ASP.NET Core 中,服务(如 DbContext)需要注册到依赖注入(DI)容器中。通过 DI 容器,控制器可以获取所需的服务。
使用脚手架生成控制器
脚手架是一种自动生成代码的工具,可以帮助快速创建模型、控制器和视图。
安装脚手架工具
运行以下命令安装脚手架工具及相关包:
dotnet add package Microsoft.VisualStudio.Web.CodeGeneration.Design
dotnet add package Microsoft.EntityFrameworkCore.Design
dotnet tool install --global dotnet-aspnet-codegenerator
生成控制器
运行以下命令生成 TodoItemsController:
dotnet aspnet-codegenerator controller -name TodoItemsController -async -api -m TodoItem -dc TodoContext -outDir Controllers
生成的控制器将包含基本的 CRUD 操作方法。
测试 Web API
使用 Postman 测试
- 启动应用程序,按
Ctrl+F5或运行以下命令:
dotnet run
- 打开 Postman,禁用 SSL 证书验证(路径:文件 > 设置 > 常规)。
- 创建一个新的 POST 请求,URL 为:
https://localhost:[端口号]/api/TodoItems
- 在请求正文中输入以下 JSON 数据:
{
"name": "Learn ASP.NET Core",
"isComplete": false
}
- 点击 发送,您将收到一个包含新创建资源 URI 的响应。
总结
通过本指南,您已经学习了如何使用 .NET Core 3.1 构建一个简单的 Web API,并了解了模型类、数据库上下文和脚手架的基本概念。在下一部分中,我们将添加一个 Web 表单,使用 JavaScript 实现对 Web API 的 CRUD 操作。最后,我们会使用 Bootstrap 4 为应用程序添加响应式设计。
原文链接: https://blog.quadiontech.com/web-api-with-net-core-3-1-from-scratch-making-a-to-do-app-part-1-2f035059af5a
最新文章
- LangChain | 一种语言模型驱动应用的开发框架
- API 是否应该采用语义化版本控制?
- 如何获取 RollToolsApi 开放平台 API Key 密钥(分步指南)
- WordPress REST API 内容注入漏洞分析
- 智能旅行API:你的完美旅行规划助手
- 大模型新基座,基于FastAPI,利用Python开发MCP服务器
- Google DeepMind发布 Genie 3 API架构解析:24fps流式3D世界协议
- 什么是OpenAPI?
- 把 C# 里的 HttpClient 封装起来,告别复杂的配置,让 Restful API 调用更轻松更高效
- 释放Spring Boot API中数字签名的强大功能
- 如何使用ChatGPT JavaScript API,3个简单步骤
- 如何通过 SEO rank API 进行竞争对手分析