• Dapper基本增删改查


    说明:

      1、在using语句块中不用dbConnection.Open(),因为Execute方法中会Open,并且在执行完成会Close。

      2、在Ado.Net中要手动Open,在Using语句块中使用时,可以不用手动Close。

     public ActionResult Select()
            {
                string sql = @"select * from Info";
                List<Info> list = null;
                using (IDbConnection dbConnection = new SqlConnection(ConfigurationManager.ConnectionStrings["default"].ToString()))
                {
                    list = dbConnection.Query<Info>(sql, CommandType.StoredProcedure).ToList();
                    SqlMapper.GridReader gridReader = dbConnection.QueryMultiple(sql);
                    gridReader.Read();
                }
    
                return Content("");
            }
    
            public ActionResult Update()
            {
                string sql = @"update info set Name=@Name where Age=@Age";
                using (IDbConnection dbConnection = new SqlConnection(ConfigurationManager.ConnectionStrings["default"].ToString()))
                {
                    dbConnection.Execute(sql, new Info() { Name = "s张", Age = 10 });
                }
                return Content("");
            }
    
            public ActionResult Delete()
            {
                string sql = @"delete from info where Age=@Age";
                using (IDbConnection dbConnection = new SqlConnection(ConfigurationManager.ConnectionStrings["default"].ToString()))
                {
                    dbConnection.Execute(sql, new Info() { Age = 10 });
                }
                return Content("OK");
            }
    
            public ActionResult Insert()
            {
                string sql = "insert Userinfo values('zhao2323',23,'上海')";
                string str = "";
                IDbConnection dbConnection = null;
                using (dbConnection = new SqlConnection(ConfigurationManager.ConnectionStrings["default"].ToString()))
                {
                    str += "<br />Execute之前" + dbConnection.State;
                    dbConnection.Execute(sql);
                    str += "<br />Execute之后" + dbConnection.State;
                }
                str += "<br />using之后" + dbConnection.State;
                return Content("OK" + str);
                //执行结果:
                //            Execute之前Closed
                //Execute之后Closed
                //using之后Closed
            }
    
            public ActionResult AdoNet()
            {
                string sql = "insert into UserInfo values('zhao',23,'上海')";
                string str = "";
                SqlConnection connection = null;
                using (connection = new SqlConnection(ConfigurationManager.ConnectionStrings["default"].ToString()))
                {
                    using (SqlCommand command = new SqlCommand(sql, connection))
                    {
                        connection.Open();
                        command.ExecuteNonQuery();
                        str += "<br />ExecuteNonQuery之后:" + connection.State;
                    }
                    str += "<br />using Command之后:" + connection.State;
                }
                str += "<br />using Connection之后:" + connection.State;
                return Content("Ok" + str);
                //执行结果
                //            ExecuteNonQuery之后:Open
                //using Command之后:Open
                //using Connection之后:Closed
            }
  • 相关阅读:
    操作系统-进程(1)进程与进程调度
    算法-图(6)广度优先遍历图
    网络摄像头RTSP流媒体协议视频平台EasyNVR如何进行延迟测试?
    【方案搭建】如何通过RTSP协议视频平台EasyNVR架设智慧城市实景终端展现方案?
    【解决方案】如何通过RTSP流媒体协议视频平台EasyNVR搭建智慧景区远程视频监管平台?
    7-12 排序 (25分)
    7-36 社交网络图中结点的“重要性”计算 (30分)-floyd最短路径
    7-35 城市间紧急救援 (25分)-dijkstra最短路径
    7-34 任务调度的合理性 (25分)--拓扑排序
    7-33 地下迷宫探索 (30分)--DFS
  • 原文地址:https://www.cnblogs.com/zhaoyihao/p/5342167.html
Copyright © 2020-2023  润新知