Dapper的简单操作

Dapper的用法与DBHelper的用法有些许类似,便于记忆理解。  
//数据库连接字符串
        string connStr = "Data Source=.;Initial Catalog=MonthTest;Integrated Security=True";
       
        //Dapper添加
        [HttpPost]
        public int DapperAdd(GoodsInfo gd)
        {
            var i = 0;
            using (IDbConnection conn = new SqlConnection(connStr))
            {
                string sql = $"insert into GoodsInfoes values('{gd.GName}',{gd.GPrice},{gd.GNum},{gd.TypeInfoId},'{gd.GImg}')";
                i = conn.Execute(sql);
            }
            return i;
        }
 
        //Dapper显示
        [HttpGet]
        public List<GoodsInfo> DapperShow()
        {
            using (IDbConnection conn = new SqlConnection(connStr))
            {
                string sql = $"select * from GoodsInfoes g join TypeInfoes t on g.TypeInfoId=t.Id";
                return conn.Query<GoodsInfo>(sql).ToList();
            }
        }
 
        //Dapper删除
        [HttpDelete]
        public int DapperDel(int id)
        {
            int i = 0;
            using (IDbConnection conn = new SqlConnection(connStr))
            {
                string sql = $"delete from GoodsInfoes where Id={id}";
                i = conn.Execute(sql);
            }
            return i;
        }
 
        //查看详情
        [HttpGet]
        public GoodsInfo DapperDetial(int id)
        {
            using (IDbConnection conn = new SqlConnection(connStr))
            {
                GoodsInfo gd = new GoodsInfo();
                string sql = $"select * from GoodsInfoes where Id={id}";
                return conn.Query<GoodsInfo>(sql, gd).FirstOrDefault();
            }
        }
 
        //编辑状态
        [HttpPut]
        public int DapperEdit(int id, string name)
        {
            using (IDbConnection conn = new SqlConnection(connStr))
            {
                string sql = $"update GoodsInfoes set GName='{name}' where Id={id}";
                return conn.Execute(sql);
            }
        }
        //Dapper调用存储过程
        [HttpGet]
        public PageModel DapperPage(string name, int index, int size)
        {
            if (name == null)
            {
                name = "";
            }
            DynamicParameters para = new DynamicParameters();
            para.Add("@name", name);
            para.Add("@index", index);
            para.Add("@size", size);
            para.Add("@total", dbType: DbType.Int32, direction: ParameterDirection.Output);
            para.Add("@count", dbType: DbType.Int32, direction: ParameterDirection.Output);
           
            PageModel page = new PageModel();
            using (IDbConnection conn = new SqlConnection(connStr))
            {
                page.List = conn.Query<GoodsInfo>("p_page", para, commandType: CommandType.StoredProcedure).ToList();
                page.PageCount = para.Get<int>("@count");
            }
            return page;
        }
原文地址:https://www.cnblogs.com/sxkang/p/13447685.html