Dapper 连接 MySQL 需安装 Dapper 和 MySql.Data 两个 NuGet 包,配置正确连接字符串(如 Server=localhost;Port=3306;Database=mydb;User ID=root;Password=123456;SslMode=None;Allow User Variables=true),并通过 MySqlConnection 实例调用 Dapper 的 Query、Execute 等扩展方法。

Dapper 本身不直接处理数据库连接,它依赖 ADO.NET 提供的数据库驱动。要让 Dapper 连上 MySQL,关键其实是配置好 MySql.Data 驱动 + 正确的连接字符串 + 标准的 IDbConnection 使用方式。下面几步走完,基本就通了。
缺一不可:
安装方式任选其一:
• 在包管理控制台运行:
Install-Package Dapper
Install-Package MySql.Data
• 或在 .csproj 中手动添加引用:
<PackageReference Include="Dapper" Version="2.1.35" /><br><PackageReference Include="MySql.Data" Version="8.3.0" />
推荐放在 appsettings.json 里,方便管理与切换环境:
"ConnectionStrings": {<br> "DefaultConnection": "Server=localhost;Port=3306;Database=mydb;User ID=root;Password=123456;SslMode=None;Allow User Variables=true;"<br>}注意几个实用细节:
MySqlConnectionStringBuilder 构造核心就是:创建 MySqlConnection 实例 → 打开 → 丢给 Dapper 的扩展方法用。不需要额外封装也能跑起来:
string connStr = Configuration.GetConnectionString("DefaultConnection");<br>using var conn = new MySqlConnection(connStr);<br>conn.Open();<br><br>var users = conn.Query<User>("SELECT * FROM Users WHERE Age > @age", new { age = 18 });常见写法提示:
using 自动释放连接,别忘了 Open()(Dapper 不会帮你开)@xxx 占位符,Dapper 会自动映射匿名对象或实体属性Execute();查单个用 QuerySingle() 或 QueryFirstOrDefault()
项目稍大时,建议把连接逻辑抽成基类,避免每个 Repository 都重复 new MySqlConnection:
public class BaseRepository<br>{<br> protected readonly string _connStr;<br> public BaseRepository(IConfiguration config) => _connStr = config.GetConnectionString("DefaultConnection");<br><br> protected IDbConnection CreateConnection() => new MySqlConnection(_connStr);<br>}子类直接调用 CreateConnection(),再传给 Dapper,干净又可控。
不复杂但容易忽略:驱动版本匹配、连接字符串权限、防火墙端口、MySQL 用户 host 设置(比如 root@localhost ≠ root@%)。连不上先查这四点。
以上就是Dapper怎么连接MySQL数据库 Dapper for MySQL配置方法的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号