标签:MySqlConnection args 学习 connection ex new Query Dapper
描述
Query是一个可以从IDbConnection类型的任意对象调用的扩展方法,它可以执行查询并映射结果。
结果可以映射到:
- 匿名类型
- 强类型
- 多映射(一对一)
- 多映射(一对多)
- 多类型
参数
下表显示了Query方法的不同参数。
名称 | 描述 |
---|---|
sql | 要执行的查询。 |
param | 查询参数(默认为null )。 |
transaction | 需要使用的事务(默认为null )。 |
buffered | 是否从缓冲读取查询结果(默认为true )。 |
commandTimeout | 命令执行超时时间(默认为null )。 |
commandType | 命令类型(默认为null )。 |
案例1 - 返回实体列表
描述:原生SQL查询可以使用Query方法执行,并将结果映射到动态类型列表
string sqlString = "select * from contract where contractnum=@contractnum";
using (MySqlConnection connection = new MySqlConnection(DbHelperMySQL.connectionString)) { try { connection.Open(); var args = new DynamicParameters(new { }); args.Add("contractnum", "1");
var contract = connection.Query(sqlString, args).ToList(); } catch (MySql.Data.MySqlClient.MySqlException ex) { thrownew Exception(ex.Message); } }
案例2 - 返回实体列表
描述:原生SQL查询可以使用Query方法执行,并将结果映射到强类型列表
/// <summary> /// 执行查询语句,根据合同号返回contract_config_model实体 /// </summary> /// <param name="sqlString">查询语句</param> /// <returns>DataSet</returns> public List<contract_config_model> GetContractConfigModel() { string sqlString = "select * from contract where contractnum=@contractnum"; List<contract_config_model> modellist = new List<contract_config_model>(); using (MySqlConnection connection = new MySqlConnection(DbHelperMySQL.connectionString)) { try { connection.Open(); var args = new DynamicParameters(new { }); args.Add("contractnum", "1"); modellist =connection.Query<contract_config_model>(sqlString,args).ToList(); } catch (MySql.Data.MySqlClient.MySqlException ex) { throw new Exception(ex.Message); } return modellist; } }
using (MySqlConnection connection = new MySqlConnection(DbHelperMySQL.connectionString)) {
try { connection.Open(); var args = new DynamicParameters(new { }); args.Add("contractid", "1"); var contract = connection.Query(sqlString, args).ToList(); } catch (MySql.Data.MySqlClient.MySqlException ex) { throw new Exception(ex.Message); } }
标签:MySqlConnection,args,学习,connection,ex,new,Query,Dapper 来源: https://www.cnblogs.com/for917157ever/p/14111056.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。