zoukankan      html  css  js  c++  java
  • Re0:在.NetCore 中Dapper的基本用法

    整理一下目前在用的Dapper

    与FrameWork不同,NetCore数据库配置需要从appsettings.json中获取

    刚接触的时候被这块坑了,自己手动建了个app.config。然后你懂的(笑哭)

    读取配置文件:

     1 public class AppSetting
     2     {
     3         private static readonly object objLock = new object();
     4         private static AppSetting instance = null;
     5 
     6         private IConfigurationRoot Config { get; }
     7 
     8         private AppSetting()
     9         {
    10             var builder = new ConfigurationBuilder()
    11              .SetBasePath(Directory.GetCurrentDirectory())
    12              .AddJsonFile("appsettings.json", optional: false, reloadOnChange: true);
    13             Config = builder.Build();
    14         }
    15 
    16         public static AppSetting GetInstance()
    17         {
    18             if (instance == null)
    19             {
    20                 lock (objLock)
    21                 {
    22                     if (instance == null)
    23                     {
    24                         instance = new AppSetting();
    25                     }
    26                 }
    27             }
    28 
    29             return instance;
    30         }
    31 
    32         public static string GetConfig(string name)
    33         {
    34             if (string.IsNullOrWhiteSpace(name))
    35             {
    36                 return "name is null";
    37             }
    38             return GetInstance().Config.GetSection(name).Value;
    39         }
    40     }

    日常够用的几个方法:

     1         /// <summary>
     2         /// 返回行数
     3         /// </summary>
     4         /// <param name="sql">SQL</param>
     5         /// <returns></returns>
     6         public static int Execute(string sql)
     7         {
     8             string URL = AppSetting.GetConfig("ConnectionStringsDapper:DB");
     9             IDbConnection conn = new SqlConnection(URL);
    10             int result = conn.Execute(sql);
    11             return result;
    12         }
    13 
    14         /// <summary>
    15         /// 返回List
    16         /// </summary>
    17         /// <param name="sql">SQL</param>
    18         /// <returns></returns>
    19         public static dynamic Query(string sql)
    20         {
    21             string URL = AppSetting.GetConfig("ConnectionStringsDapper:DB");
    22             IDbConnection conn = new SqlConnection(URL);
    23             dynamic result = conn.Query(sql);
    24             return result;
    25         }
    26 
    27         /// <summary>
    28         /// 返回单条
    29         /// </summary>
    30         /// <param name="sql">SQL</param>
    31         /// <returns></returns>
    32         public static dynamic QueryFirst(string sql)
    33         {
    34             string URL = AppSetting.GetConfig("ConnectionStringsDapper:DB");
    35             IDbConnection conn = new SqlConnection(URL);
    36             dynamic result = conn.QueryFirst(sql);
    37             return result;
    38         }            

    Controller中调用:

    1     
    2       string sql = "bula bula bula";
    3          dynamic result = Query(sql);
    4 
    5       string sql = "bula bula bula";
    6         dynamic result = QueryFirst(sql);
    7 
    8       string sql = "bula bula bula";
    9          int result= Execute(sql);
  • 相关阅读:
    linux内核中的subsys_initcall是干什么的?
    linux内核中的MFD子系统
    linux内核中有哪些子系统(框架)呢?
    软件架构师书籍
    求最大公约数和最小公倍数
    写一个函数判断字符串中"{"与"}","["与"]","("与")"匹配,"{"必须在"}"前面,"["必须在"]"前面,"("必须在")"前面,可以嵌套
    请用程序写出冒泡排序算法,并做相应改进使得排序效率更高
    50个必备的实用jQuery代码段+ 可以直接拿来用的15个jQuery代码片段
    js同比例缩放图片
    oracle 10g函数大全--其他函数
  • 原文地址:https://www.cnblogs.com/Ginease/p/10671593.html
Copyright © 2011-2022 走看看