ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Dapper 学习(一) Query方法

2020-12-09 21:33:45  阅读:239  来源: 互联网

标签: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. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有