使用dapper进行参数化查询
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用dapper进行参数化查询相关的知识,希望对你有一定的参考价值。
在使用Dapper操作Mysql数据库中我介绍了使用dapper进行CURD基本操作,但在示例代码中参数虽然也是通过@开头,但其实不是真正意义的参数化查询,而是拼接sql,这种方式不利于防止sql注入,所以在Dappe中可以使用DynamicParameters动态参数集合添加参数,从而实现dapper下的参数化查询;
示例代码
using (var connection = new mysqlConnection(connstr)) { //声明动态参数 DynamicParameters Parameters = new DynamicParameters(); //开始事务 IDbTransaction transaction = connection.BeginTransaction(); try { int cnt = 0; string sQuery = "Delete FROM user " + "WHERE [email protected]"; //添加参数 Parameters.Add("Id", id); connection.Execute(sQuery, Parameters, transaction, null, null); //提交事务 transaction.Commit(); return true; } catch (Exception ex) { //出现异常,事务Rollback transaction.Rollback(); return false; throw new Exception(ex.Message); } }
以上是关于使用dapper进行参数化查询的主要内容,如果未能解决你的问题,请参考以下文章
使用 Informix 和 Dapper 向查询添加参数失败并出现语法异常