Ejemplo n.º 1
0
        public bool Add(T model, Expression <Func <T, object> > fields, bool ignoreKey = true)
        {
            if (fields == null)
            {
                sql.Insert(model, ignoreKey);
            }
            else
            {
                sql.Insert <object>(model, fields);
            }
            int count = this.Execute();

            return(count > 0 ? true : false);
        }
Ejemplo n.º 2
0
        public void Do(ProviderType type)
        {
            SqlLam <Test> sql = new SqlLam <Test>("u", type);
            //sql.Top(10);

            DbClient db = new DbClient();

            db.Error = (s, e) =>
            {
                Console.WriteLine(e.Message);
            };
            db.Log = (s) =>
            {
                Log.WriteLog(1, "Insert_Log", s.Text);
            };
            //var list = db.GetList<Test>(sql.GetSql(), sql.GetParameters());

            //foreach (var item in list)
            //{
            //    Console.WriteLine(string.Format("id: {0}, int 16: {1} , double: {2}, datetime: {3} , guid: {4}, string: {5}", item.Id, item.F_Int16, item.F_Double, item.F_DateTime, item.F_Guid, item.F_String));
            //}
            DateTime begin = DateTime.Now;

            Console.WriteLine(string.Format("当前时间: {0}", begin));

            //遍历入库
            //for (int i = 0; i < 10000; i++)
            //{
            //    sql.Clear();
            //    sql.Insert(new Test());
            //    string insertSql = sql.GetSql();
            //    int count = db.ExecuteNonQuery(insertSql, sql.GetParameters());
            //}
            //一次性入库
            sql.Clear();
            List <Test> list = new List <Test>(100);

            for (int i = 0; i < 200; i++)
            {
                list.Add(new Test());
            }
            sql.Insert(list);

            string insertSql = sql.GetSql();
            int    count     = db.ExecuteNonQuery(insertSql, sql.GetParameters());

            TimeSpan ts = DateTime.Now - begin;

            Console.WriteLine(string.Format("共用时: {0}", ts.TotalMilliseconds));
        }
Ejemplo n.º 3
0
        public void Do(ProviderType type)
        {
            string        fileName = "Config";
            int           count    = 1;
            SqlLam <Area> sql      = new SqlLam <Area>("a", type);

            Log.WriteLog(count, fileName, "特性配置表名", "SqlLam<Area> sql = new SqlLam<Area>(\"a\", type);", sql);

            //sql.Clear();
            count++;
            //SqlTableEntity areaTable = new SqlTableEntity(typeof(Area), "T_Area_全局");
            //GlobalConfig.AddTable(areaTable);
            Log.WriteLog(count, fileName, "全局配置表名", "SqlTableEntity areaTable = new SqlTableEntity(typeof(Area), \"T_Area\");GlobalConfig.Tables.Add(areaTable);", sql);

            //sql.Clear();
            count++;
            Log.WriteLog(count, fileName, "全局配置表名两种方式都存在", "SqlTableEntity areaTable = new SqlTableEntity(typeof(Area), \"T_Area\");GlobalConfig.Tables.Add(areaTable);", sql);

            sql.Clear();
            count++;
            sql.Select(m => m.AreaName);
            Log.WriteLog(count, fileName, "特性配置列名", "SqlLam<Area> sql = new SqlLam<Area>(\"a\", type);sql.Select(m => m.AreaName);", sql);

            sql.Clear();
            count++;
            //areaTable.AddColumn(new SqlColumnEntity("AreaName", "F_AreaName"));
            //GlobalConfig.AddTable(areaTable);
            sql.Select(m => m.AreaName);
            Log.WriteLog(count, fileName, "全局配置列名", "areaTable.Columns.Add(new SqlColumnEntity(\"AreaName\", \"F_AreaName\"));", sql);


            sql.Clear();
            count++;
            sql.Select(m => new { m.AreaName, m.Layer });
            Log.WriteLog(count, fileName, "忽略查询列名", " sql.Select(m => new { m.AreaName, m.Layer });", sql);

            sql.Clear();
            count++;
            Area a = new Area();

            a.Layer    = 10;
            a.AreaName = "测试";
            sql.Insert(a, false);
            Log.WriteLog(count, fileName, "忽略插入列名", " sql.Insert(a);", sql);

            sql.Clear();
            count++;

            a.Layer    = 10;
            a.AreaName = "测试";
            sql.Update(a, false).Where(m => m.Id);
            Log.WriteLog(count, fileName, "忽略修改列名", " sql.Update(a, false);", sql);

            sql.Clear();
            count++;

            a.Layer    = 10;
            a.AreaName = "测试";
            sql.Update(a, m => new { m.ParentId, m.Id, m.AreaName }).Where(m => m.Id);
            Log.WriteLog(count, fileName, "忽略修改列名部分字段", " sql.Update(a, m => new { m.ParentId, m.Id, m.AreaName }).Where(m => m.Id);", sql);
        }