<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          TsOrm基于 .Net 的簡易 ORM

          聯(lián)合創(chuàng)作 · 2023-09-30 02:03

          TsOrm 是為了學習 DynamicMethod 和 Lambda 表達式而寫出來的簡易的 ORM ,如果你不想使用 EF ,NH 等重量級 Orm,歡迎大家學習和使用 TsOrm!

          TsOrm 使用非常簡單,代碼如下:

          創(chuàng)建IOrm , TsOrm 支持 SqlServer、MySql、PostgreSQL

           string connectionstring ="DataSource=.\\SQLEXPRESS;uid=sa;pwd=root;Initial Catalog=test;Integrated Security=SSPI;Integrated Security=True";
              //SqlServer
              IOrm Sqlserver = OrmFactory.GetOrm(ServerType.SqlServer, connectionstring);
              //MySql
              IOrm MySql = OrmFactory.GetOrm(ServerType.MySql, connectionstring);

          執(zhí)行SQL

          查詢操作 

            string sql = "SELECT * FROM table";
              //返回第一行第一列
              object obj = orm.SqlQuery(sql).ExecuteScalar();
              // 返回 DataTable
              DataTable table = Sqlserver.SqlQuery(sql).ExcuteDataTable();
              // 返回List<T>
              List<Entity> list = Sqlserver.SqlQuery(sql).ToEntityList<Entity>();

          增刪改操作   

          string sql = "DELETE  FROM table";
              int n =orm.SqlQuery(sql).ExecuteNonQuery();

          Interesting Things 

            [Table("data_user")]
              public class User
              {
                  public long Uid { get; set; }
                  public string NickName { get; set; }
              }
              IOrm<User> orm = OrmFactory.GetOrm<User>(ServerType.SqlServer, connectionstring);
              //查找
              List<User> user = orm.SqlQuery(sql).ToEntityList();
              //執(zhí)行存儲過程
              List<User> result = orm.SqlQuery(sql,parameter).ToEntityList(CommandType.StoredProcedure);
              //可以這么更新
              int count = orm.UpdateColumn("NickName", "TsOrm").Where("Uid=89480").Update();
              //可以這么使用Lambda更新
              int count2 = orm.UpdateColumn("NickName", "TsOrm2").Where(x => x.Uid == 89480).Update();
              //可以這么使用Lambda更新
              int count3 = orm.UpdateColumn(x => x.NickName, "TsOrm").Where(x => x.Uid == 89480).Update();
              //如果你數(shù)據(jù)庫中有一列儲存的Json字符串 你可以在需要Json反序列化的地方加上JsonNet Attribute
              //TsOrm會自動幫你把數(shù)據(jù)庫中的Json字符串反序列化
              public class Entity
              {
                  public string name { get; set; }
                  [JsonNet]
                  public Child child { get; set; }
              }
               public class Child
              {
                  public string name { get; set; }
                  public int age { get; set; }
              }
          瀏覽 22
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          編輯 分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          編輯 分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  青娱乐自拍视频地址 | 亚洲做爱视频 | 成人网址一区二区三区 | 婷婷五月天在线无码 | 欧美大香蕉在线观看免费一区二区三区 |