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

     

  • 相关阅读:
    D3D中的Alpha颜色混合(1)
    最小的MFC程序
    命名空间规则【内部】
    能登陆QQ,打不开网页
    .net重要的开源组件[更新中]
    validateRequest="false"属性及xss攻击
    RSS介绍
    Virtual、Override和New关键字的使用
    SQL语句精妙集合
    绝好的软件集合
  • 原文地址:https://www.cnblogs.com/for917157ever/p/14111056.html
Copyright © 2020-2023  润新知