在 .NET 8 框架中使用 Web API 项目并通过引用 SqlSugar ORM 来操作数据库,可以遵循以下步骤:
1. 准备工作
确保已安装 .NET 8 SDK 和 SqlSugar NuGet 包。
创建或打开现有的 Web Core API 项目。
安装 SqlSugar NuGet 包:
dotnet add package SqlSugar
2. 配置 SqlSugar
在 Web API 项目中配置 SqlSugar,通常需要以下几步:
2.1 添加 SqlSugar 配置到 appsettings.json
示例配置:
{
"ConnectionStrings": {
"DefaultConnection": "Server=localhost;Database=TestDb;User Id=sa;Password=your_password;"
}
}
2.2 在 Program.cs
中配置 SqlSugar
using SqlSugar;
var builder = WebApplication.CreateBuilder(args);
// 配置 SqlSugar
builder.Services.AddScoped<ISqlSugarClient>(sp =>
{
var config = new ConnectionConfig
{
ConnectionString = builder.Configuration.GetConnectionString("DefaultConnection"),
DbType = DbType.SqlServer, // 根据实际数据库类型修改,例如:MySql、PostgreSQL 等
IsAutoCloseConnection = true
};
return new SqlSugarClient(config);
});
var app = builder.Build();
app.MapGet("/", () => "Hello World!");
app.Run();
3. 创建服务和控制器
3.1 创建数据模型
示例模型 User
:
public class User
{
[SugarColumn(IsPrimaryKey = true, IsIdentity = true)] // 主键和自增列
public int Id { get; set; }
public string Name { get; set; }
public int Age { get; set; }
}
3.2 创建服务操作数据库
创建一个服务类,封装数据库操作:
using SqlSugar;
public class UserService
{
private readonly ISqlSugarClient _db;
public UserService(ISqlSugarClient db)
{
_db = db;
}
public async Task<List<User>> GetAllUsersAsync()
{
return await _db.Queryable<User>().ToListAsync();
}
public async Task AddUserAsync(User user)
{
await _db.Insertable(user).ExecuteCommandAsync();
}
}
3.3 注入服务
在 Program.cs
中注册服务:
builder.Services.AddScoped<UserService>();
3.4 创建控制器
创建 UserController
,处理前端请求:
using Microsoft.AspNetCore.Mvc;
[ApiController]
[Route("api/[controller]")]
public class UserController : ControllerBase
{
private readonly UserService _userService;
public UserController(UserService userService)
{
_userService = userService;
}
[HttpGet]
public async Task<IActionResult> GetUsers()
{
var users = await _userService.GetAllUsersAsync();
return Ok(users);
}
[HttpPost]
public async Task<IActionResult> AddUser(User user)
{
await _userService.AddUserAsync(user);
return Ok();
}
}
4. 启动并测试 API
启动 Web API 项目:
dotnet run
使用 Postman 或其他工具访问:
GET /api/User
:获取用户列表。POST /api/User
:添加新用户(需要在请求体中提供用户数据)。
5. 可选:集成 Swagger
在 Program.cs
中启用 Swagger 以方便测试:
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();
var app = builder.Build();
if (app.Environment.IsDevelopment())
{
app.UseSwagger();
app.UseSwaggerUI();
}
app.MapControllers();
app.Run();
访问 http://localhost:5000/swagger
测试 API。
注意事项
SqlSugar 特性支持:SqlSugar 支持 CodeFirst 和 DbFirst,灵活选择。
事务支持:SqlSugar 提供丰富的事务支持,使用 _db.Ado.BeginTran()
等方法处理复杂操作。
数据库类型:确保正确选择数据库类型,例如 DbType.SqlServer
或 DbType.MySql
。
通过上述步骤,您可以在 .NET 8 Web Core API 项目中顺利集成 SqlSugar ORM!
发布者:myrgd,转载请注明出处:https://www.object-c.cn/4714