今天了解并学习了下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. C# .Net :Excel NPOI导入导出操作教程之将Excel文件读取并写到数据库表,示例分享

    using (FileStream fileReader = File.OpenRead(@"C:\Users\Administrator\Desktop\112.xls"))   ...

  2. 编译安装mmseg提示cannot find input file: src/Makefile.in错误

    今天安装中文词检索功能模块 coreseek,其中一个分词模块 mmseg ,编译安装到最后,出现annot find input file: src/Makefile.in aclocal   // ...

  3. Web Api系列教程第2季(OData篇)(二)——使用Web Api创建只读的OData服务

    前言 很久没更新了,之前有很多事情,所以拖了很久,非常抱歉.好了,废话不多说,下面开始正题.本篇仍然使用上一季的的项目背景(系列地址http://www.cnblogs.com/fzrain/p/34 ...

  4. Linux 新手的学习笔记

    系统分区: MBR分区(主分区不超过4个,单个分区不超过2TB) fdisk -l fdisk /dev/sdb n(添加一个分区)p(添加一个主分区,主分区)e(添加一个扩展分区)l(添加一个逻辑分 ...

  5. Oracle下批量将一个用户的所有表的select权限赋值给另外一个用户

    起因 为什么会有这篇文章呢? 因为最近在做项目的时候遇到一个问题...实际生产环境中程序datasource登陆的Oracle数据库用户user1不是我们创建的.这个用户没有访问我们业务表的权限(因为 ...

  6. R语言——绘制半圆形图

    好久没发点新的作品了.......也许...... Que sera, seraWhatever will be, will be

  7. Java ClassLoader 原理详细分析(转)

    转载自:http://www.codeceo.com/article/java-classloader.html 一.什么是ClassLoader? 大家都知道,当我们写好一个Java程序之后,不是管 ...

  8. 【Java】正则表达式

    正则表达式是做什么的? 正则表达式可用在处理字符串,满足查找符合某些复杂规则的字符串的需要.简言之,正则表达式是记录文本规则的代码. 上图~

  9. Beta阶段项目总结

    1.   每个成员在beta 阶段的实践和alpha 阶段有何改进? 王文奇:对数据库的操作更为熟练,在java web中实现对数据库的修改更加完善 刘元柱:对javascript,css和servl ...

  10. 转:C++项目中的extern "C" {}

    引言 在用C++的项目源码中,经常会不可避免的会看到下面的代码: #ifdef __cplusplus extern "C" { #endif /*...*/ #ifdef __c ...