Dapper入门学习
今天了解并学习了下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入门学习的更多相关文章
- AY的Dapper研究学习-基本入门-C#开发-aaronyang技术分享
原文:AY的Dapper研究学习-基本入门-C#开发-aaronyang技术分享 ====================www.ayjs.net 杨洋 wpfui.com ...
- Dapper快速学习
Dapper快速学习 我们都知道ORM全称叫做Object Relationship Mapper,也就是可以用object来map我们的db,而且市面上的orm框架有很多,其中有一个框架 叫做dap ...
- vue入门学习(基础篇)
vue入门学习总结: vue的一个组件包括三部分:template.style.script. vue的数据在data中定义使用. 数据渲染指令:v-text.v-html.{{}}. 隐藏未编译的标 ...
- Hadoop入门学习笔记---part4
紧接着<Hadoop入门学习笔记---part3>中的继续了解如何用java在程序中操作HDFS. 众所周知,对文件的操作无非是创建,查看,下载,删除.下面我们就开始应用java程序进行操 ...
- Hadoop入门学习笔记---part3
2015年元旦,好好学习,天天向上.良好的开端是成功的一半,任何学习都不能中断,只有坚持才会出结果.继续学习Hadoop.冰冻三尺,非一日之寒! 经过Hadoop的伪分布集群环境的搭建,基本对Hado ...
- PyQt4入门学习笔记(三)
# PyQt4入门学习笔记(三) PyQt4内的布局 布局方式是我们控制我们的GUI页面内各个控件的排放位置的.我们可以通过两种基本方式来控制: 1.绝对位置 2.layout类 绝对位置 这种方式要 ...
- PyQt4入门学习笔记(一)
PyQt4入门学习笔记(一) 一直没有找到什么好的pyqt4的教程,偶然在google上搜到一篇不错的入门文档,翻译过来,留以后再复习. 原始链接如下: http://zetcode.com/gui/ ...
- Hadoop入门学习笔记---part2
在<Hadoop入门学习笔记---part1>中感觉自己虽然总结的比较详细,但是始终感觉有点凌乱.不够系统化,不够简洁.经过自己的推敲和总结,现在在此处概括性的总结一下,认为在准备搭建ha ...
- Retrofit 入门学习
Retrofit 入门学习官方RetrofitAPI 官方的一个例子 public interface GitHubService { @GET("users/{user}/repos&qu ...
随机推荐
- Nike Zoom Winflo 2 Kvinder Sko Når jeg set elementet
De fleste af os elskede denne Nike Pegasus 34 foruden var ved at blive begejstret for at få dine ben ...
- 使用Python解析JSON数据
使用Python解析百度API返回的JSON格式的数据 # coding:utf-8 # !/usr/bin/env python import matplotlib.pyplot as plt fr ...
- thinkphp5.0分页
第一种 public function index(){ // 页面和面包屑导航 $ttl[] = $this->title; $ttl[] = '管理员列表'; $this->assig ...
- Win10 磁盘占用 100% 有效解决办法
立即查看 任务管理器,看看是不是有一个 服务主机 unistack服务组或者找类似名称的,点开以后你会看到里面有同步主机 blablah请你毫不犹豫的结束它!结束它!结束它! 按下WIN+R调出运行, ...
- websocket的介绍
偶然在知乎上看到一篇回帖,瞬间觉得之前看的那么多资料都不及这一篇回帖让我对 websocket 的认识深刻有木有.所以转到我博客里,分享一下.比较喜欢看这种博客,读起来很轻松,不枯燥,没有布道师的阵仗 ...
- 解决svn pritine text not exist问题
svn: E155032: The pristine text with checksum '$sha1$151400d1cd4c5fc190d500aa1826d45cb91f088f' not f ...
- c++ 接口和抽象类
其实对抽象类与接口的区别一直是搞不太清楚,最近正在学习<设计模式>,期间用到了很多c++多态的知识.这是才恍然发现,是应该整理下这方面的知识了.但在翻阅书本.上网查阅资料之际,发现有篇文章 ...
- ASP.NET知识总结 (未完) 本人新手
1:HTTP的工作方式是什么?1)客户端提交表单请求处理 Request2)服务器端处理程序进行处理 Handle3)服务端相应 Response 2:1)get(默认值)是通过地址栏的URL显式地传 ...
- 利用xhsell登录到远程腾讯云服务器
xshell连接管理腾讯云服务器图文教程 打开xshell点击文件新建会话框 linux服务器ssh管理软件XSHELL下载及安装图文教程 输入公网IP地址确认下一步 选中服务器连接 一次性接受,不储 ...
- Spark 官方文档(5)——Spark SQL,DataFrames和Datasets 指南
Spark版本:1.6.2 概览 Spark SQL用于处理结构化数据,与Spark RDD API不同,它提供更多关于数据结构信息和计算任务运行信息的接口,Spark SQL内部使用这些额外的信息完 ...