C# orm实体映射框架sqlsugar使用记录

C#中轻量级的orm框架sqlsugar,用法很简单,官网http://www.codeisbug.com/

github:https://github.com/sunkaixuan/SqlSugar

世界上最简单的ORM,只需要配置连接字符串,F5运行控制台自动建库建表运行DEMO

Using SqlSugar is very simple ,And it's powerful.

SqlSugar=One object+One parameter=16 functions,

Support:MySql、SqlServer、Sqlite、Oracle 、 postgresql

 public class DbContext
    {
        public DbContext()
        {
            Db = new SqlSugarClient(new ConnectionConfig()
            {
                ConnectionString = string.Format("Data Source = {0}; Password = {1}; User Id = {2}; Pooling = true; MAX Pool Size = 80; Min Pool Size = 1",
                                                    ConfigHelper.Instance.sysConfig.IpPortDatabase,
                                                    AesHelper.AESDecrypt(ConfigHelper.Instance.sysConfig.PwdDatabase, ConfigHelper.Instance.sKey),
                                                    ConfigHelper.Instance.sysConfig.UserDatabase),
                DbType = DbType.Oracle,
                InitKeyType = InitKeyType.Attribute,//从特性读取主键和自增列信息 
                IsAutoCloseConnection = true,//开启自动释放模式和EF原理一样我就不多解释了
                //InitKeyType = InitKeyType.SystemTable //初始化主键和自增列信息到ORM的方式
            });
        }

        //注意:不能写成静态的
        public SqlSugarClient Db;//用来处理事务多表查询和复杂的操作

        //用来处理数据库表的常用操作
        public SimpleClient StuBaseDb { get { return new SimpleClient(Db); } }

    }

今天遇到一个这个问题,以后使用过程中需要注意:

//第一种方法是正常的sql查询
var list = new DbContext().Db.Queryable().Where(it => it.ID == custID).ToList();

//第二种方法是先获取表所有数据,在内存中过滤。不建议使用这种方式,表数据量大的时候,内存吃不消
var list2 = new DbContext().StuBaseDb.GetList().Where(it => it.ID== custID).ToList();

你可能感兴趣的:(.NET)