Dapper是一个轻型的开源ORM类,代码就一个SqlMapper.cs文件

using Dapper;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web; namespace WcfServiceTest
{
/// <summary>
/// Dapper案例
/// </summary>
public class StudentDB
{
//获取web.config里的连接字符串
public static string connectionString = System.Configuration.ConfigurationManager.AppSettings["connectstring"]; /// <summary>
/// 查询指定数据
/// </summary>
/// <param name="person"></param>
/// <returns></returns>
public static List<Student> Query(string name)
{
using (IDbConnection connection = new SqlConnection(connectionString))
{
string strsql = "select * from Student where 1=1 ";
if (!string.IsNullOrEmpty(name))
{
strsql += "and Name like '%@Name%'";
}
return connection.Query<Student>(strsql, name).ToList();
}
} /// <summary>
/// 反填
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
public static Student QueryById(int id)
{
using (IDbConnection connection = new SqlConnection(connectionString))
{
return connection.Query<Student>("select * from Student where Id=@Id", id).SingleOrDefault();
}
} /// <summary>
/// 新增
/// </summary>
/// <param name="student"></param>
/// <returns></returns>
public static int Insert(Student student)
{
using (IDbConnection connection = new SqlConnection(connectionString))
{
return connection.Execute("insert into Student(Name,Age) values(@Name,@Age)", student);
}
} public static int Update(Student student)
{
using (IDbConnection connection = new SqlConnection(connectionString))
{
return connection.Execute("update Studentset Name = @Name,Age= @Age where Id=@Id", student);
}
} /// <summary>
/// 删除
/// </summary>
/// <param name="student"></param>
/// <returns></returns>
public static int Delete(int Id)
{
using (IDbConnection connection = new SqlConnection(connectionString))
{
return connection.Execute("delete from Student where Id=@Id", Id);
}
} /// <summary>
/// 批量删除
/// </summary>
/// <param name="students"></param>
/// <returns></returns>
public static int Delete(List<Student> students)
{
using (IDbConnection connection = new SqlConnection(connectionString))
{
return connection.Execute("delete from Student where Id=@Id", students);
}
} }
}

Dapper的应用的更多相关文章

  1. Dapper逆天入门~强类型,动态类型,多映射,多返回值,增删改查+存储过程+事物案例演示

    Dapper的牛逼就不扯蛋了,答应群友做个入门Demo的,现有园友需要,那么公开分享一下: 完整Demo:http://pan.baidu.com/s/1i3TcEzj 注 意 事 项:http:// ...

  2. Dapper扩展之~~~Dapper.Contrib

    平台之大势何人能挡? 带着你的Net飞奔吧!http://www.cnblogs.com/dunitian/p/4822808.html#skill 上一篇文章:Dapper逆天入门~强类型,动态类型 ...

  3. 由Dapper QueryMultiple 返回数据的问题得出==》Dapper QueryMultiple并不会帮我们识别多个返回值的顺序

    异常汇总:http://www.cnblogs.com/dunitian/p/4523006.html#dapper 今天帮群友整理Dapper基础教程的时候手脚快了点,然后遇到了一个小问题,Dapp ...

  4. Dapper.Contrib:GetAsync<T> only supports an entity with a [Key] or an [ExplicitKey] property

    异常处理:http://www.cnblogs.com/dunitian/p/4523006.html#dapper 原来Model是这样滴 修改后是这样滴 注意点:Model里面的Table和Key ...

  5. Dapper where Id in的解决方案

    简单记一下,一会出去有点事情~ 我们一般写sql都是==>update NoteInfo set NDataStatus=@NDataStatus where NId in (@NIds) Da ...

  6. ASP.NET Core 1.0 使用 Dapper 操作 MySql(包含事务)

    操作 MySql 数据库使用MySql.Data程序包(MySql 开发,其他第三方可能会有些问题). project.json 代码: { "version": "1. ...

  7. Asp.Net Core + Dapper + Repository 模式 + TDD 学习笔记

    0x00 前言 之前一直使用的是 EF ,做了一个简单的小项目后发现 EF 的表现并不是很好,就比如联表查询,因为现在的 EF Core 也没有啥好用的分析工具,所以也不知道该怎么写 Linq 生成出 ...

  8. 搭建一套自己实用的.net架构(3)续 【ORM Dapper+DapperExtensions+Lambda】

    前言 继之前发的帖子[ORM-Dapper+DapperExtensions],对Dapper的扩展代码也进行了改进,同时加入Dapper 对Lambda表达式的支持. 由于之前缺乏对Lambda的知 ...

  9. mono for android中使用dapper或petapoco对sqlite进行数据操作

    在mono for android中使用dapper或petapoco,很简单,新建android 类库项目,直接把原来的文件复制过来,对Connection连接报错部分进行注释和修改就可以运行了.( ...

  10. Dapper:The member of type SeoTKD cannot be used as a parameter Value

    异常汇总:http://www.cnblogs.com/dunitian/p/4523006.html#dapper 上次说了一下Dapper的扩展Dapper.Contrib http://www. ...

随机推荐

  1. IIS 支持 m3u8

    加上俩 MIME 类型就可以了 <mimeMap fileExtension=".m3u8" mimeType="application/x-mpegURL&quo ...

  2. 【JAVA】servlet 定时启动

    步骤一: web.xml中加上如下的代码: <load-on-startup>10</load-on-startup>这句话是重点. <servlet> <s ...

  3. Codeforces 1110D. Jongmah 动态规划

    原文链接https://www.cnblogs.com/zhouzhendong/p/CF1110D.html 题意 给定 n 个数,每一个数都是在 [1,m] 里的整数. 从中取出形如 {x,x,x ...

  4. SpringCloud使用Nacos服务发现实现远程调用

    本文使用SpringCloud结合Nacos服务发现,Feign远程调用做一个简单的Demo. 1 Nacos 关于Nacos之前写了两篇文章关于SpringBoot对它的使用,感兴趣可以查看一下. ...

  5. HTML(五)

    HTML5新结构标签 h5新增的主要语义化标签如下: 1.header 页面头部.页眉2.nav 页面导航3.article 一篇文章4.section 文章中的章节5.aside 侧边栏6.foot ...

  6. 【安全性测试】Android测试中的一点小发现

    在执行某个项目中的APP测试发现的两个问题,自然也是提供参考,作为经验记录下来. 一.通过apk的xml文件获取到某项目APP的账号和密码 使用eclipsel或者drozer,获得apk的xml文件 ...

  7. Unity项目导入的error

    5.6.3error 如下:An assembly with the same name `UnityEngine.UI' has already been imported. Consider re ...

  8. 小程序上拉加载更多数据(onReachBottom)

    <!--pages/test/test.wxml--> <block wx:for="{{list}}" wx:key="item.id"&g ...

  9. Selenium 3----警告框处理+下拉框选择

    警告框处理 在WebDriver中处理JavaScript所生成的alert.confirm以及prompt十分简单,具体做法是使用 switch_to.alert 方法定位到 alert/confi ...

  10. 使用Dubbo的SPI扩展机制实现自定义LoadBalance——方法一 修改Dubbo源代码

    一. 拉取源码 到Dubbo官网 https://github.com/apache/incubator-dubbo/tree/2.5.x 下载源码,解压. 二. 导入IDEA 选择解压后的源码目录, ...