# DbFrame **Repository Path**: zhfling/DbFrame ## Basic Information - **Project Name**: DbFrame - **Description**: Lambda(拉姆达)表达式 生产 SQL 语句 让 Dapper 执行的 ORM,Dapper的Lambda扩展 - **Primary Language**: C# - **License**: Not specified - **Default Branch**: master - **Homepage**: http://hzyadmin.milaizhijie.com - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 6 - **Created**: 2019-11-07 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # DbFrame #### 介绍 ``` //PostgreSQL //var postgreSql = new DbContextPostgreSQL("PostgreSQL Connection String"); //var _MemberModel = postgreSql.Find(w => w.t1.Member_ID == Guid.Empty); //...... //Oracel //var oracel = new DbContextOracle("Oracel Connection String"); //oracel.Insert(new int_tab { name = "hzy" }); //...... //MySql //var mysqldb = new DbContextMySql("MySql Connection String"); //var Sql = mysqldb.Query().Top(5).ToSql(); //var sqlCode = Sql.Code.ToString(); //sqlCode = mysqldb.Query().OrderByDesc(w => w.t1.Member_CreateTime).TakePage(1, 20).ToSql().Code.ToString(); //...... //SqlServer DbContextSqlServer.Register("Server=.;Database=AppDB;User ID=sa;Password=123456;", (tabs) => { //注册表 tabs.Register(typeof(Member)); tabs.Register(typeof(int_tab)); tabs.Register(typeof(Sys_User)); }); var db = new DbContextSqlServer(); //批量生成脚本并提交事务到数据库 db.Commit((li) => { for (int i = 0; i < 50; i++) { var _s = db.InsertObject(new Member { Member_Name = $"Commit{i}" }).ToSql(key => Console.WriteLine(key.ToString())); li.Add(_s); } }); var _mem = db.FindById(Guid.Parse("711f10eb-97df-4888-86c1-fd4854511d27")); _mem.Member_Name = "测试update555"; //更新整个实体忽略字段 测试 var update = db .UpdateObject(_mem) .Where(w => w.t1.Member_ID == _mem.Member_ID) .IgnoreCols(w => w.Member_Name) .Execute(); var sss = db.Query(w => w.t1.Member_ID == Guid.Empty) .Select(w => new { state = "", 姓名 = 0, sqlstring = "123" }) .ToSql(); var str1 = " as a"; var s = db.Query() .Where(w => (w.t1.Member_ID == Guid.Empty) | (w.t1.Member_Num == $"{2}")) .OrderBy(w => w.SqlStr("this is sql string")) .OrderBy(w => new { sql1 = $"num", w.t1.Member_Num, w.t1.Member_Name, w.t1.Member_Phone }) .Select(w => "a" + str1) .ToSql(); s = db.Query() .Where(w => w.SqlStr($"{nameof(w.t1.Member_Num)}") == 1) .OrderBy(w => $"Member_Name{str1}") .Select(w => new { w.t1, w.t1.Member_CreateTime }) .ToSql(); db.Query().OrderBy(w => w.t1.Member_Name); var x = new { user = "hzy", age = "24" }; var str = "1,1,1,2".Replace("1", "2"); Type t = x.GetType(); var guids = new List() { Guid.NewGuid(), Guid.NewGuid(), Guid.NewGuid() }; var _Iquery = db.Query() .Where(w => w.In(w.t1.Member_ID, guids))// 语法 IN(1,2,3) .OrderByDesc(w => w.t1.Member_CreateTime); //.OrderBy(w => w.t1.Member_CreateTime); //.OrderBy(w => new { desc = w.t1.Member_CreateTime });//.Top(1).ToList(); //分页 var _Meber_List = _Iquery.TakePage(1, 20).ToList(); //总数 //var _Count = _Iquery.Count(); //var _Max = _Iquery.Max(w => w.t1.Member_CreateTime); //var _Min = _Iquery.Min(w => w.t1.Member_CreateTime); //var _Sum = _Iquery.Sum(w => w.t1.Member_Phone); var _Member = db.Find(w => w.t1.Member_ID == Guid.Parse("9a604aa2-9ae6-4a2f-8ddb-d9e0289ead9e")); var test = "test"; var query1 = db.Query() .Join(w => w.t1.Member_UserID == w.t2.User_ID) .Where(w => w.t1.Member_Sex == "男") .Select(w => new { SqlString = test + "t1.Member_Name" })//new { w.t1.Member_Name, w.t2.User_LoginName }) .ToList(); var _Sql = db.Query() .Join(w => w.t1.Member_UserID == w.t2.User_ID) .Where(w => w.t1.Member_Sex == "男") .Select(w => w.t1)//new { w.t1.Member_Name, w.t2.User_LoginName }) .ToList(); var _Member_Frist = db.Query() .Join(w => w.t1.Member_UserID == w.t2.User_ID) .Where(w => w.t1.Member_Sex == "男") .Select(w => new { w.t1, w.t2.User_LoginName }) .Frist(); var _Member_Frist_0 = db.Query() .Join(w => w.t1.Member_UserID == w.t2.User_ID) .Where(w => w.t1.Member_Sex == "男") .Select(w => w.t1.Member_Name) .Frist(); var filed = "Member_Name"; var _Member_Frist_1 = db.Query() .Join(w => w.t1.Member_UserID == w.t2.User_ID) .Where(w => w.t1.Member_Sex == "男") .Select(w => filed) .Frist(); foreach (var item in _Sql) { var a = item.Member_Name; } db.Commit(() => { /**int 自增**/ //var _int_tab = new int_tab(); //_int_tab.name = "hzy" + DateTime.Now; //_int_tab.id = db.Insert(_int_tab).ToInt32(); /*** guid 主键 ***/ for (int i = 0; i < 100; i++) { _Member = new Member(); _Member.Member_Birthday = DateTime.Now; _Member.Member_Introduce = "111"; _Member.Member_Name = "wjf" + DateTime.Now; _Member.Member_Num = "1"; _Member.Member_Phone = 123123123; _Member.Member_Sex = "男"; _Member.Member_ID = Guid.Parse(db.Insert(_Member).ToString()); } var iquery = db.Query() .Where(w => w.t1.Member_Sex.Contains("男")) .Select(w => new { w.t1.Member_Name }) .ToList(); var list = db.QueryBySql("select * from Member with(nolock)"); throw new Exception("123"); }); //db.DeleteById(_Member.Member_ID); ```