.net core使用SqlSugarCore
时间: 2023-11-22 21:56:01 浏览: 139
SqlSugarCore 是一个适用于 .NET Core 的 ORM 框架,可以方便地进行数据库操作。下面是使用 SqlSugarCore 进行 CRUD 操作的示例:
1. 添加 SqlSugarCore 包
可以通过 NuGet 包管理器或者命令行安装 SqlSugarCore 包。
2. 配置数据库连接信息
在项目中添加 appsettings.json 文件,并添加如下配置:
```json
{
"ConnectionStrings": {
"DefaultConnection": "Server=localhost;Database=testdb;Uid=root;Pwd=123456;"
}
}
```
3. 创建实体类
创建一个实体类,用于映射数据库表:
```csharp
public class User
{
[SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
public int Id { get; set; }
public string Name { get; set; }
public int Age { get; set; }
public DateTime CreateTime { get; set; }
}
```
4. 初始化 SqlSugarCore
在 Startup.cs 中的 ConfigureServices 方法中添加如下代码:
```csharp
// 声明 SqlSugarCore 配置
var dbConfig = new ConnectionConfig
{
ConnectionString = Configuration.GetConnectionString("DefaultConnection"),
DbType = DbType.MySql, // 数据库类型
IsAutoCloseConnection = true // 是否自动关闭连接
};
// 注册 SqlSugarCore
services.AddScoped<ISqlSugarClient>(_ => new SqlSugarClient(dbConfig));
```
5. 进行 CRUD 操作
在需要进行数据库操作的地方,注入 ISqlSugarClient 接口,并调用相应的方法即可:
```csharp
public class UserService
{
private readonly ISqlSugarClient _db;
public UserService(ISqlSugarClient db)
{
_db = db;
}
public async Task AddUser(User user)
{
await _db.Insertable(user).ExecuteCommandAsync();
}
public async Task<User> GetUser(int id)
{
return await _db.Queryable<User>().InSingleAsync(id);
}
public async Task UpdateUser(User user)
{
await _db.Updateable(user).ExecuteCommandAsync();
}
public async Task DeleteUser(int id)
{
await _db.Deleteable<User>().In(id).ExecuteCommandAsync();
}
}
```
以上就是使用 SqlSugarCore 进行数据库操作的基本流程。当然,SqlSugarCore 还提供了更多高级特性,如多表查询、分页查询等,具体可以参考官方文档。
阅读全文