今天了解并学习了下Dapper的用法,这里简单介绍下

1.安装Nuget Dapper Package包

2.代码

using (IDbConnection connection = new SqlConnection("server=.;database=Test;uid=sa;pwd=123456"))
{           
         //通过connection.Execute(sql,object)方法执行增删改
//UserInfo userInfo = new UserInfo();
//userInfo.Id = Guid.NewGuid();
//userInfo.UserName = "aa";
//userInfo.Name = "张三";
//string sql = "insert into UserInfo values(@id,@userName,@name)";
//connection.Execute(sql, userInfo); //connection.Execute(sql, new
//{
// Id = Guid.NewGuid(),
// UserName = "bb",
// Name = "张三1"
//}); //UserInfo userInfo = new UserInfo();
//userInfo.Id = Guid.NewGuid();
//userInfo.UserName = "aa";
//userInfo.Name = "张三"; //Comment comment = new Comment();
//comment.Id = Guid.NewGuid();
//comment.Content = "东西挺好的";
//comment.UserInfoId = userInfo.Id;
// string sql = "insert into UserInfo values(@id,@userName,@name)";
//connection.Execute(sql, userInfo);
//string sql1 = "insert into Comment values(@id,@Content,@UserInfoId)";
//connection.Execute(sql1, comment); //userInfo.Name = "李四";
//string sqlupdate = "update UserInfo set name = @name where username=@username";
//connection.Execute(sqlupdate, userInfo); //string sqldelete = "delete from userinfo where username = @username";
//connection.Execute(sqldelete, userInfo);          //通过connection.Query(sql)执行查询
// string query = "select * from userinfo";
// var list = connection.Query(query).ToList();
// foreach (dynamic d in list)
// {
// Console.WriteLine(d.UserName);
// } // string query1 = "select * from userinfo where username = @username";
//List<UserInfo> userInfos = connection.Query<UserInfo>(query1, new {username = "bb"}).ToList();
// foreach (UserInfo d in userInfos)
// {
// Console.WriteLine(d.UserName);
// } string query = "select * from userinfo u left join comment c on u.id=c.userInfoId";
////Query<TFirst, TSecond, TReturn>
//List<UserInfo> userInfos = connection.Query<UserInfo, Comment, UserInfo>(query,
// (userInfo, comment) =>
// {
// if (userInfo.Comments == null)
// {
// userInfo.Comments = new List<Comment>();
// }
// userInfo.Comments.Add(comment);
// return userInfo;
// }
//).ToList();           //通过connection.QueryMultiple(sql)一次查询多个实体
//using (var multi = connection.QueryMultiple(query))
//{
// var userInfoss = multi.Read<UserInfo>().ToList(); // foreach (var userInfo in userInfoss)
// {
// Console.WriteLine(userInfo.UserName);
// }
//} //var user = connection.Query<UserInfo>("uspGetUser", new {id = "1A61D9E8-A295-4844-8EB1-3F390657CFBB"},
// commandType: CommandType.StoredProcedure).SingleOrDefault();
//Console.WriteLine(user.Name); Console.ReadKey();
}

Dapper入门学习的更多相关文章

  1. AY的Dapper研究学习-基本入门-C#开发-aaronyang技术分享

    原文:AY的Dapper研究学习-基本入门-C#开发-aaronyang技术分享 ====================www.ayjs.net       杨洋    wpfui.com      ...

  2. Dapper快速学习

    Dapper快速学习 我们都知道ORM全称叫做Object Relationship Mapper,也就是可以用object来map我们的db,而且市面上的orm框架有很多,其中有一个框架 叫做dap ...

  3. vue入门学习(基础篇)

    vue入门学习总结: vue的一个组件包括三部分:template.style.script. vue的数据在data中定义使用. 数据渲染指令:v-text.v-html.{{}}. 隐藏未编译的标 ...

  4. Hadoop入门学习笔记---part4

    紧接着<Hadoop入门学习笔记---part3>中的继续了解如何用java在程序中操作HDFS. 众所周知,对文件的操作无非是创建,查看,下载,删除.下面我们就开始应用java程序进行操 ...

  5. Hadoop入门学习笔记---part3

    2015年元旦,好好学习,天天向上.良好的开端是成功的一半,任何学习都不能中断,只有坚持才会出结果.继续学习Hadoop.冰冻三尺,非一日之寒! 经过Hadoop的伪分布集群环境的搭建,基本对Hado ...

  6. PyQt4入门学习笔记(三)

    # PyQt4入门学习笔记(三) PyQt4内的布局 布局方式是我们控制我们的GUI页面内各个控件的排放位置的.我们可以通过两种基本方式来控制: 1.绝对位置 2.layout类 绝对位置 这种方式要 ...

  7. PyQt4入门学习笔记(一)

    PyQt4入门学习笔记(一) 一直没有找到什么好的pyqt4的教程,偶然在google上搜到一篇不错的入门文档,翻译过来,留以后再复习. 原始链接如下: http://zetcode.com/gui/ ...

  8. Hadoop入门学习笔记---part2

    在<Hadoop入门学习笔记---part1>中感觉自己虽然总结的比较详细,但是始终感觉有点凌乱.不够系统化,不够简洁.经过自己的推敲和总结,现在在此处概括性的总结一下,认为在准备搭建ha ...

  9. Retrofit 入门学习

    Retrofit 入门学习官方RetrofitAPI 官方的一个例子 public interface GitHubService { @GET("users/{user}/repos&qu ...

随机推荐

  1. JQuery------分页插件下载地址

    转载GitHub: https://github.com/pgkk/kkpager

  2. IOS和Android图标尺寸

    刚开始接触UI的时候,碰到的最多的就是尺寸问题,今天我们就来谈谈IOS和Android 图标设计尺寸吧! 一.IOS篇 1.iOS app图标的圆角半径是多少? (注:现在IOS图标是不需要再画圆角了 ...

  3. JS中的动态表格

    写法一:(有点啰嗦) //--------------XML DOM--------------------------------------function addTR(){ //1.取三个框的值 ...

  4. React项目(二):生命游戏

    引子 这是16年最后的一个练手项目,一贯的感觉就是,做项目容易,写说明文档难.更何况是一个唤起抑郁感觉的项目,码下的每个字,心就如加了一个千斤的砝码. 2016年,有些事我都已忘记,但我现在还记得.2 ...

  5. gprs/gsm 在linux下的应用

    之前有篇随笔整理了一种在裸机下用状态机+超时的机制来操作gprs/gsm,linux下就不需要了,本身有完善的调度机制,在等待的流程中直接sleep就行了. 下面是飞凌OK6410下的 demo, 其 ...

  6. Excel—SUMPRODUCT用法指南

    1.最简单的SUMPRODUCT函数等同与SUM函数. 2.SUMPRODUCT可以设置多参数,其输出值为各参数对应值的乘积之和. E2=6*7+8*6+2*8+9*8+3*8+5*9 3.SUMPR ...

  7. 集中日志服务器Rsyslog

    http://www.gaizaoren.org/archives/408 基于主机的管理一般需要收集服务器的日志信息用于及时发现错误,处理故障. 搭建linux下的集中日志服务器的程序一般可以用sy ...

  8. hashMap 深入理解

    1.java 的hashMap 是通过 链地址 法来解决 hash冲突的 2.初始时是一个empty table, 第一次添加数据时检查到时空数组就会 生成指定容量的数组,也就是 在第一次使用时才初始 ...

  9. Yii2 ActiveRecord save失败

    当给AR写beforeSave方法时,注意返回true还是false.如果没有返回值,或者返回false,那么就不会存入数据库.如下 晚上写代码的时候beforeSave忘了返回true,导致无法存入 ...

  10. php编译 :virtual memory exhausted: Cannot allocate memory

    有时候用vps建站时需要通过编译的方式来安装主机控制面板.对于大内存的VPS来说一般问题不大,但是对于小内存,比如512MB内存的VPS来说,很有可能会出现问题,因为编译过程是一个内存消耗较大的动作. ...