以本地mysql数据库为例
准备工作,新建数据库,新建表(例如book表),然后定义Book类,book表和Book类应对应,这样dapper才能把他们映射好
在appsettings.json中配置数据库连接
"ConnectionStrings": {
"MySQL": "server=localhost;user id=root;password=root;port=3306;database=test"
}
安装包
Install-Package Pomelo.EntityFrameworkCore.MySql
Install-Package Dapper
注册IDbConnection服务
services.AddScoped<IDbConnection>(_ => new MySqlConnection(Configuration.GetConnectionString("MySQL")));
然后就可以在Controller中写个测试,来模拟查询数据(例如查询出所有的Book实体)
using Microsoft.AspNetCore.Mvc;
using Swashbuckle.AspNetCore.Annotations;
using System.Data;
using Dapper;
namespace PureAPIProject.Controllers
{
[ApiController]
[Route("[controller]/[action]")]
public class WeatherForecastController : ControllerBase
{
private readonly IDbConnection _dbConnection;
public WeatherForecastController(IDbConnection dbConnection)
{
_dbConnection = dbConnection;
}
[HttpGet]
public async Task<object> TestAsync()
{
return await _dbConnection.QueryAsync<Book>("select * from book");
}
}
}