zoukankan      html  css  js  c++  java
  • Dapper 学习(一) Query方法

    描述

    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;
                }
            }

     

  • 相关阅读:
    java8学习笔记之lambda表达式
    spring注解value的用法
    mybites
    spring bean的初始化以及销毁
    java并发之线程间通信
    mybatis常见问题和错误
    hadoop安装问题记录
    linux 常用命令
    省选模拟98 题解
    省选模拟97 题解
  • 原文地址:https://www.cnblogs.com/for917157ever/p/14111056.html
Copyright © 2011-2022 走看看