zoukankan      html  css  js  c++  java
  • Dapper入门使用,代替你的DbSQLhelper

    Dapper介绍

    Dapper是.Net下的一个轻量级ORM框架.在小型工具向的项目下,使用Dapper会使数据库操作层代码更加优雅。

    Dapper的使用

    在项目中使用引用Dapper非常简单,你可以选择两种方式:

    1.在NuGet引用

    2.Github下载源代码,添加到项目当中去

    Dapper 项目地址  https://github.com/StackExchange/Dapper

    添加项目 Dapper  到你自己的项目当中去,这样可以直接调试Dapper的源代码

    个人感觉添加源代码到项目当中比较可靠,遇到问题可以直接跟踪

    Dapper项目

    添加Dapper源代码到项目当中

    CURD操作

    表结构

    CREATE TABLE [dbo].[BAS_NAME](
        [ID] [INT] NULL,
        [NAME] [VARCHAR](50) NULL,
        [OTHER] [VARCHAR](50) NULL,
        [DATE] [DATETIME] NULL
    ) ON [PRIMARY]

    1.Insert操作

    代码中看出,直接使用Execute加实体的方式相比传统 SqlParameter的方式更加方便。

    IDbConnection conn = new SqlConnection(connectionString);
    //Insert
    string insetSql = "INSERT dbo.BAS_NAME(ID, NAME, OTHER, DATE)VALUES(@ID, @NAME, @OTHER, @DATE)";
    BAS_NAME nameInfo = new BAS_NAME();
    nameInfo.ID = 0;
    nameInfo.NAME = "小王";
    nameInfo.OTHER = string.Empty;
    nameInfo.DATE = DateTime.Now;
    var result = conn.Execute(insetSql, nameInfo);
    
    Console.Write(result);
    Console.ReadKey();

    当然了你也可以使用这种方式新增行

    var result = conn.Execute(insetSql, new {ID = 1,NAME = "小李",OTHER="233",DATE = DateTime.Now });

    2.Update操作

    和Insert类似

    BAS_NAME nameInfo = new BAS_NAME();
    nameInfo.ID = 0;
    nameInfo.NAME = "小王233";
    nameInfo.OTHER = "233";
    nameInfo.DATE = DateTime.Now;
    
    string upDateSql = " UPDATE dbo.BAS_NAME SET NAME = @NAME,OTHER= @OTHER,[DATE] = @DATE WHERE ID = @ID";
    
    var result = conn.Execute(upDateSql, nameInfo);

    3.Select操作

    string selectSql = "SELECT * FROM BAS_NAME";
    List<BAS_NAME> basNameList = conn.Query<BAS_NAME>(selectSql).ToList();
    
    selectSql = "SELECT * FROM BAS_NAME WHERE ID = @ID";
    basNameList = conn.Query<BAS_NAME>(selectSql,new { ID = 1 }).ToList();

    4.Delete操作

    var result = conn.Execute("DELETE FROM dbo.BAS_NAME WHERE ID = @ID", new { ID = 0 });
  • 相关阅读:
    京东Java面试题(二)
    京东Java面试题(一)
    阿里java面试题
    Java垃圾回收机制
    MyBatis面试题
    Java IO流总结
    Spring中文文档
    Vue.js实战之组件之间的数据传递
    Vue.js实战之Vuex的入门教程
    Vue系列——在vue项目中使用jQuery及其第三方插件
  • 原文地址:https://www.cnblogs.com/Jeely/p/11357631.html
Copyright © 2011-2022 走看看