ADO.NET(ActiveX Data Objects .NET)是 Microsoft 在 .NET 框架中提供的一组数据访问服务,用于在应用程序中进行数据库操作。它提供了一种灵活且高效的方式来访问和操作数据源,支持连接到多种数据源(如数据库、XML 文档等)并执行数据操作。
先安装 MySQL.Data 包,在项目上 右键——管理NuGet程序包,打开 NuGet 包管理器。
在 “浏览” 中搜索 MySQL,在搜索结果中点击 MySQL.Data 进行安装。
安装完成后在项目下创建 Utility 文件夹,用于存放数据库操作类。
在 Utility 文件夹中创建 MySqlUtil.cs 工具类
写入 MySqlUtil.cs 工具类的内容:MySqlUtil.cs 下载
在 MySQL 数据库中,创建 Users 表。
create table users(
id int primary key auto_increment comment 'id',
code varchar(36) comment '用户代码',
name varchar(55) comment '用户姓名',
age int comment '年龄',
pwd varchar(55) comment '密码',
if_active char(1) comment '是否有效',
if_delete char(1) comment '是否删除',
update_time datetime comment '更新时间',
create_time datetime comment '记录时间'
) comment = '用户表';
在 Models 文件夹中创建实体类 Users(没有 Models 文件夹则先创建)
在项目下创建 Daos 文件夹
创建 UsersDao.cs 类
在 UsersDao.cs 类中写入操作数据库的方法:UsersDao.cs 下载
在项目下创建 Services 文件夹
创建 UsersService.cs 类
在 UsersService 中写入 调用 UsersDao 的方法:UsersService.cs 下载
先在 Models 文件夹中创建 API 接口的信息返回类 BackMsg.cs
再在 Models 文件夹中创建自定义异常类 CustomException.cs,用于抛出自定义的异常信息,并在 Controller 中进行 Catch。
写入 CustomException.cs 异常类的内容:CustomException.cs 下载
接下来在 Controllers 文件夹下 右键——添加——Web API控制器类,创建 UserController.cs
在 UserController 中写入用户相关的 API 接口,采用 POST 的调用方式:UsersController.cs 下载
启动项目成功
通过 Postman 调用创建用户的 API,返回成功
查看数据库中是否成功创建
更新用户年龄为 30,返回成功
查看数据库中是否更新成功
调用 API 进行删除(逻辑删除)
查看数据库中是否删除成功
调用 API 进行查询
API 接口返回 JSON 时,用的是 JsonConvert.SerializeObject(),默认返回的时间格式是:2024-06-02T22:58:06 。
这不是我们需要的时间格式,所以对返回的时间格式进行设置,设置 JSON 中时间格式的方法有 2 个:
// 设置日期格式
var settings = new JsonSerializerSettings
{
DateFormatString = "yyyy-MM-dd HH:mm:ss"
};
// 序列化对象并设置日期格式
string json = JsonConvert.SerializeObject(obj, settings);
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
GlobalConfiguration.Configure(WebApiConfig.Register);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
// 统一对 JsonConvert.SerializeObject() 返回的日期格式进行设置
// 因为 JsonConvert.SerializeObject() 默认返回的日期格式是 2024-06-02T22:58:06,所以要设置一下
JsonConvert.DefaultSettings = () => new JsonSerializerSettings
{
DateFormatString = "yyyy-MM-dd HH:mm:ss"
};
}
设置完时间格式后,重新调用获取用户的 API,观察到时间格式已经变成了 2024-06-02 22:58:06 的格式。
以上步骤中创建的项目可下载:Web API 项目下载