Update README.md

This commit is contained in:
果糖网 2021-01-10 12:42:56 +08:00 committed by GitHub
parent 71f61fe36d
commit 7bedc69fde
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

150
README.md
View File

@ -2,26 +2,26 @@
## 👨‍🎓果糖大数据科技(南通)有限公司(永久免费开源) ## ## 👨‍🎓果糖大数据科技(南通)有限公司(永久免费开源) ##
公司地址南通太阳晶城大厦3幢125室 公司地址南通太阳晶城大厦3幢125室
|qq|微信|Email|QQ Group| | qq | 微信 | Email | QQ Group |
|---------| ---------|---------|---------| | ---------| ---------| ---------| ---------|
|610262374| sabimao| 610262374@qq.com | 225982985| | 610262374 | sabimao | 610262374@qq.com | 225982985 |
服务项目:接收项目外包等服务(高级程序员&需求分析&软件架构师),技术咨询,技术顾问 服务项目:接收项目外包等服务(高级程序员 & 需求分析 & 软件架构师),技术咨询,技术顾问
## 👮‍♀️中文文档: ## 👮‍♀️中文文档:
世界上最简单的ORM只需要配置连接字符串F5运行控制台自动建库建表运行DEMO 世界上最简单的ORM只需要配置连接字符串F5运行控制台自动建库建表运行DEMO
<font color=#0099ff size=72> 地址:</font> http://donet5.com/Home/Doc <font color=#0099ff size=72> 地址:</font> http://donet5.com/Home/Doc
# 🕵English documents # 🕵English documents
Using SqlSugar is very simple ,And it's powerful. Using SqlSugar is very simple , And it's powerful.
SqlSugar=One object+One parameter=16 functions, SqlSugar=One object+One parameter=16 functions,
SupportMySql、SqlServer、Sqlite、Oracle 、 postgresql 、达梦、人大金仓 SupportMySql、SqlServer、Sqlite、Oracle 、 postgresql 、达梦、人大金仓
## 📮Nuget ## 📮Nuget
@ -32,19 +32,19 @@ SupportMySql、SqlServer、Sqlite、Oracle 、 postgresql 、达梦、人大
## 📑SqlSugar's 16 Functions ## 📑SqlSugar's 16 Functions
There are 16 methods under SqlSugarClient There are 16 methods under SqlSugarClient
![输入图片说明](http://www.codeisbug.com/_theme/ueditor/utf8-net/net/upload/image/20190430/6369224056499802674782957.jpg?id=111 "sqlsugar") ![输入图片说明](http://www.donet5.com/_theme/ueditor/utf8-net/net/upload/image/20190430/6369224056499802674782957.jpg?id=111 "sqlsugar")
## 🎀 Create SqlSugarClient ## 🎀 Create SqlSugarClient
All operations are based on SqlSugarClient All operations are based on SqlSugarClient
SqlSugarClient parameter and only one ConnectionConfig SqlSugarClient parameter and only one ConnectionConfig
```cs ```cs
public List<Student> GetStudentList() public List<Student> GetStudentList()
{ {
var db= GetInstance(); var db = GetInstance();
var list= db.Queryable<Student>().ToList();//Search var list = db.Queryable<Student>().ToList();//Search
return list; return list;
} }
@ -55,12 +55,12 @@ public List<Student> GetStudentList()
private SqlSugarClient GetInstance() private SqlSugarClient GetInstance()
{ {
SqlSugarClient db = new SqlSugarClient(new ConnectionConfig() SqlSugarClient db = new SqlSugarClient(new ConnectionConfig()
{ {
ConnectionString = "Server=.xxxxx", ConnectionString = "Server=.xxxxx",
DbType = DbType.SqlServer, DbType = DbType.SqlServer,
IsAutoCloseConnection = true, IsAutoCloseConnection = true,
InitKeyType = InitKeyType.Attribute InitKeyType = InitKeyType.Attribute
}); });
//Print sql //Print sql
db.Aop.OnLogExecuting = (sql, pars) => db.Aop.OnLogExecuting = (sql, pars) =>
{ {
@ -79,48 +79,48 @@ public class Student
} }
``` ```
[<font color=red>View more >> </font>](https://github.com/sunkaixuan/SqlSugar/wiki/0.SqlSugarClient) [<font color=red>View more >> </font>](https://github.com/sunkaixuan/SqlSugar/wiki/0.SqlSugarClient)
## 🎉 1. Queryable ## 🎉 1. Queryable
We use it to query We use it to query
![输入图片说明](http://www.codeisbug.com/_theme/ueditor/utf8-net/net/upload/image/20190502/6369240932997363035197459.png?id=1112 "Queryable") ![输入图片说明](http://www.donet5.com/_theme/ueditor/utf8-net/net/upload/image/20190502/6369240932997363035197459.png?id=1112 "Queryable")
Here are some examples Here are some examples
```cs ```cs
//easy //easy
var getAll = db.Queryable<Student>().ToList(); var getAll = db.Queryable<Student>().ToList();
var getAllNoLock = db.Queryable<Student>().With(SqlWith.NoLock).ToList(); var getAllNoLock = db.Queryable<Student>().With(SqlWith.NoLock).ToList();
var getByPrimaryKey = db.Queryable<Student>().InSingle(2); var getByPrimaryKey = db.Queryable<Student>().InSingle(2);
var sum = db.Queryable<Student>().Sum(it=>it.Id); var sum = db.Queryable<Student>().Sum(it => it.Id);
var isAny = db.Queryable<Student>().Where(it=>it.Id==-1).Any(); var isAny = db.Queryable<Student>().Where(it => it.Id == -1).Any();
var isAny2 = db.Queryable<Student>().Any(it => it.Id == -1); var isAny2 = db.Queryable<Student>().Any(it => it.Id == -1);
var getListByRename = db.Queryable<School>().AS("Student").ToList(); var getListByRename = db.Queryable<School>().AS("Student").ToList();
var getByWhere = db.Queryable<Student>().Where(it => it.Id == 1 || it.Name == "a").ToList(); var getByWhere = db.Queryable<Student>().Where(it => it.Id == 1 || it.Name == "a").ToList();
var getByFuns = db.Queryable<Student>().Where(it => SqlFunc.IsNullOrEmpty(it.Name)).ToList(); var getByFuns = db.Queryable<Student>().Where(it => SqlFunc.IsNullOrEmpty(it.Name)).ToList();
var group = db.Queryable<Student>().GroupBy(it => it.Id).Select(it =>new { id = SqlFunc.AggregateCount(it.Id) }).ToList(); var group = db.Queryable<Student>().GroupBy(it => it.Id).Select(it => new { id = SqlFunc.AggregateCount(it.Id) }).ToList();
//Page //Page
var page = db.Queryable<Student>().ToPageList(pageIndex, pageSize, ref totalCount); var page = db.Queryable<Student>().ToPageList(pageIndex, pageSize, ref totalCount);
//page join //page join
var pageJoin = db.Queryable<Student, School>((st, sc) =>new JoinQueryInfos(JoinType.Left,st.SchoolId==sc.Id)) var pageJoin = db.Queryable<Student, School>((st, sc) => new JoinQueryInfos(JoinType.Left, st.SchoolId == sc.Id))
.ToPageList(pageIndex, pageSize, ref totalCount); .ToPageList(pageIndex, pageSize, ref totalCount);
//top 5 //top 5
var top5 = db.Queryable<Student>().Take(5).ToList(); var top5 = db.Queryable<Student>().Take(5).ToList();
//join Order By (order by st.id desc,sc.id desc) //join Order By (order by st.id desc,sc.id desc)
var list4 = db.Queryable<Student, School>((st, sc) =>new JoinQueryInfos(JoinType.Left,st.SchoolId==sc.Id)) var list4 = db.Queryable<Student, School>((st, sc) => new JoinQueryInfos(JoinType.Left, st.SchoolId == sc.Id))
.OrderBy(st=>st.Id,OrderByType.Desc) .OrderBy(st => st.Id, OrderByType.Desc)
.OrderBy((st,sc)=>sc.Id,OrderByType.Desc) .OrderBy((st, sc) => sc.Id, OrderByType.Desc)
.Select<ViewModelStudent>().ToList(); .Select<ViewModelStudent>().ToList();
``` ```
[<font color=red>View more >> </font>](https://github.com/sunkaixuan/SqlSugar/wiki/1.Queryable) [<font color=red>View more >> </font>](https://github.com/sunkaixuan/SqlSugar/wiki/1.Queryable)
## 🎊 2. Updateable
## 🎊 2. Updateable
We use it to Update We use it to Update
```cs ```cs
//update reutrn Update Count //update reutrn Update Count
@ -136,12 +136,12 @@ var t4 = db.Updateable(updateObj).IgnoreColumns(it => new { it.Name, it.TestId }
var t7 = db.Updateable(updateObjs).ExecuteCommand(); var t7 = db.Updateable(updateObjs).ExecuteCommand();
//Where By Expression //Where By Expression
var t9 = db.Updateable(it=>new class() { name="a",createtime=p }).Where(it => it.Id == 1).ExecuteCommand(); var t9 = db.Updateable(it => new class() { name = "a",createtime = p }).Where(it => it.Id == 1).ExecuteCommand();
``` ```
[<font color=red>View more >> </font>](https://github.com/sunkaixuan/SqlSugar/wiki/2.Updateable) [<font color=red>View more >> </font>](https://github.com/sunkaixuan/SqlSugar/wiki/2.Updateable)
## 🎃 3. Insertable ## 🎃 3. Insertable
We use it to Insert We use it to Insert
```cs ```cs
@ -152,7 +152,7 @@ var t2 = db.Insertable(insertObj).ExecuteCommand();
var t3 = db.Insertable(insertObj).ExecuteReutrnIdentity(); var t3 = db.Insertable(insertObj).ExecuteReutrnIdentity();
//Only insert Name //Only insert Name
var t4 = db.Insertable(insertObj).InsertColumns(it => new { it.Name,it.SchoolId }).ExecuteReutrnIdentity(); var t4 = db.Insertable(insertObj).InsertColumns(it => new { it.Name, it.SchoolId }).ExecuteReutrnIdentity();
//Ignore TestId //Ignore TestId
var t5 = db.Insertable(insertObj).IgnoreColumns(it => new { it.Name, it.TestId }).ExecuteReutrnIdentity(); var t5 = db.Insertable(insertObj).IgnoreColumns(it => new { it.Name, it.TestId }).ExecuteReutrnIdentity();
@ -161,7 +161,7 @@ var t5 = db.Insertable(insertObj).IgnoreColumns(it => new { it.Name, it.TestId }
var s9 = db.Insertable(insertObjs).InsertColumns(it => new { it.Name }).ExecuteCommand(); var s9 = db.Insertable(insertObjs).InsertColumns(it => new { it.Name }).ExecuteCommand();
``` ```
[<font color=red>View more >> </font>](https://github.com/sunkaixuan/SqlSugar/wiki/3.Insertable) [<font color=red>View more >> </font>](https://github.com/sunkaixuan/SqlSugar/wiki/3.Insertable)
## 🎄 4. Deleteable ## 🎄 4. Deleteable
We use it to Delete We use it to Delete
@ -185,28 +185,28 @@ db.Deleteable<Student>().Where(it => it.Id == 1).ExecuteCommand();
## 🎋 5. SqlQueryable ## 🎋 5. SqlQueryable
```cs ```cs
var list = db.SqlQueryable<Student>("select * from student").ToPageList(1, 2); var list = db.SqlQueryable<Student>("select * from student").ToPageList(1, 2);
var list2 = db.SqlQueryable<Student>("select * from student").Where(it=>it.Id==1).ToPageList(1, 2); var list2 = db.SqlQueryable<Student>("select * from student").Where(it => it.Id == 1).ToPageList(1, 2);
var list3= db.SqlQueryable<Student>("select * from student").Where("id=@id",new { id=1}).ToPageList(1, 2); var list3 = db.SqlQueryable<Student>("select * from student").Where("id=@id", new { id = 1 }).ToPageList(1, 2);
``` ```
[<font color=red>View more >> </font>](https://github.com/sunkaixuan/SqlSugar/wiki/5.SqlQueryable ) [<font color=red>View more >> </font>](https://github.com/sunkaixuan/SqlSugar/wiki/5.SqlQueryable )
## 🎎 6. SaveQueues ## 🎎 6. SaveQueues
Perform multiple operations together with transactions Perform multiple operations together with transactions
```cs ```cs
var db = GetInstance(); var db = GetInstance();
db.Insertable<Student>(new Student() { Name = "a" }).AddQueue(); db.Insertable<Student>(new Student() { Name = "a" }).AddQueue();
db.Insertable<Student>(new Student() { Name = "b" }).AddQueue(); db.Insertable<Student>(new Student() { Name = "b" }).AddQueue();
db.SaveQueues(); db.SaveQueues();
db.Insertable<Student>(new Student() { Name = "a" }).AddQueue(); db.Insertable<Student>(new Student() { Name = "a" }).AddQueue();
db.Insertable<Student>(new Student() { Name = "b" }).AddQueue(); db.Insertable<Student>(new Student() { Name = "b" }).AddQueue();
db.Insertable<Student>(new Student() { Name = "c" }).AddQueue(); db.Insertable<Student>(new Student() { Name = "c" }).AddQueue();
db.Insertable<Student>(new Student() { Name = "d" }).AddQueue(); db.Insertable<Student>(new Student() { Name = "d" }).AddQueue();
var ar = db.SaveQueuesAsync(); var ar = db.SaveQueuesAsync();
db.Queryable<Student>().AddQueue(); db.Queryable<Student>().AddQueue();
db.Queryable<School>().AddQueue(); db.Queryable<School>().AddQueue();
db.AddQueue("select * from student where id=@id", new { id = 1 }); db.AddQueue("select * from student where id=@id", new { id = 1 });
var result2 = db.SaveQueues<Student, School, Student>(); var result2 = db.SaveQueues<Student, School, Student>();
``` ```
[<font color=red>View more >> </font>](https://github.com/sunkaixuan/SqlSugar/wiki/6.queue ) [<font color=red>View more >> </font>](https://github.com/sunkaixuan/SqlSugar/wiki/6.queue )
@ -219,23 +219,23 @@ var dt=db.Ado.GetDataTable("select * from table where id=@id and name=@name",new
new SugarParameter("@id",1), new SugarParameter("@id",1),
new SugarParameter("@name",2) new SugarParameter("@name",2)
}); });
var dt=db.Ado.GetDataTable("select * from table where id=@id and name=@name",new{id=1,name=2}); var dt = db.Ado.GetDataTable("select * from table where id=@id and name=@name", new { id = 1, name = 2 });
//Use Stored Procedure //Use Stored Procedure
var dt2 = db.Ado.UseStoredProcedure().GetDataTable("sp_school",new{name="张三",age=0});// GetInt SqlQuery<T> 等等都可以用 var dt2 = db.Ado.UseStoredProcedure().GetDataTable("sp_school", new { name = "张三", age = 0 });// GetInt SqlQuery<T> 等等都可以用
var nameP= new SugarParameter("@name", "张三"); var nameP = new SugarParameter("@name", "张三");
var ageP= new SugarParameter("@age", null, true);//isOutput=true var ageP = new SugarParameter("@age", null, true);//isOutput=true
var dt2 = db.Ado.UseStoredProcedure().GetDataTable("sp_school",nameP,ageP); var dt2 = db.Ado.UseStoredProcedure().GetDataTable("sp_school", nameP, ageP);
``` ```
[<font color=red>View more >> </font>](https://github.com/sunkaixuan/SqlSugar/wiki/7.ado ) [<font color=red>View more >> </font>](https://github.com/sunkaixuan/SqlSugar/wiki/7.ado )
## 🧶 8.Saveable ## 🧶 8.Saveable
Insert or Update Insert or Update
```cs ```cs
db.Saveable<Student>(entity).ExecuteReturnEntity(); db.Saveable<Student>(entity).ExecuteReturnEntity();
db.Saveable<Student>(new Student() { Name = "" }) db.Saveable<Student>(new Student() { Name = "" })
.InsertColumns(it=>it.Name) .InsertColumns(it => it.Name)
.UpdateColumns(it=>new { it.Name,it.CreateTime } .UpdateColumns(it => new { it.Name, it.CreateTime }
.ExecuteReturnEntity(); .ExecuteReturnEntity();
``` ```
@ -254,31 +254,31 @@ foreach (var column in entityInfo.Columns)
## 🥼 10.DbMain ## 🥼 10.DbMain
```cs ```cs
var tables = db.DbMaintenance.GetTableInfoList(); var tables = db.DbMaintenance.GetTableInfoList();
foreach (var table in tables) foreach (var table in tables)
{ {
Console.WriteLine(table.Description); Console.WriteLine(table.Description);
} }
``` ```
[<font color=red>View more >> </font>](https://github.com/sunkaixuan/SqlSugar/wiki/a.DbMain ) [<font color=red>View more >> </font>](https://github.com/sunkaixuan/SqlSugar/wiki/a.DbMain )
## 🦺 11.Aop ## 🦺 11.Aop
```cs ```cs
db.Aop.OnLogExecuted = (sql, pars) => //SQL executed event db.Aop.OnLogExecuted = (sql, pars) => //SQL executed event
{ {
 
}; };
db.Aop.OnLogExecuting = (sql, pars) => //SQL executing event (pre-execution) db.Aop.OnLogExecuting = (sql, pars) => //SQL executing event (pre-execution)
{ {
 
}; };
db.Aop.OnError = (exp) =>//SQL execution error event db.Aop.OnError = (exp) =>//SQL execution error event
{ {
                 
}; };
db.Aop.OnExecutingChangeSql = (sql, pars) => //SQL executing event (pre-execution,SQL script can be modified) db.Aop.OnExecutingChangeSql = (sql, pars) => //SQL executing event (pre-execution,SQL script can be modified)
{ {
    return new KeyValuePair<string, SugarParameter[]>(sql,pars); return new KeyValuePair<string, SugarParameter[]>(sql, pars);
}; };
``` ```
@ -287,7 +287,7 @@ db.Aop.OnExecutingChangeSql = (sql, pars) => //SQL executing event (pre-exe
## 🎁 12.QueryFilter ## 🎁 12.QueryFilter
```cs ```cs
//gobal filter //gobal filter
var db = GetInstance(); var db = GetInstance();
var sql = db.Queryable<Student>().ToSql(); var sql = db.Queryable<Student>().ToSql();
//SELECT [ID],[SchoolId],[Name],[CreateTime] FROM [STudent] WHERE isDelete=0 //SELECT [ID],[SchoolId],[Name],[CreateTime] FROM [STudent] WHERE isDelete=0
@ -295,15 +295,15 @@ var sql = db.Queryable<Student>().ToSql();
public static SqlSugarClient GetInstance() public static SqlSugarClient GetInstance()
{ {
SqlSugarClient db = new SqlSugarClient(new ConnectionConfig() {xxx); SqlSugarClient db = new SqlSugarClient(new ConnectionConfig() { xxx);
db.QueryFilter.Add(new SqlFilterItem() db.QueryFilter.Add(new SqlFilterItem()
{ {
FilterValue = filterDb => FilterValue = filterDb =>
{ {
return new SqlFilterResult() { Sql = " isDelete=0" }; return new SqlFilterResult() { Sql = " isDelete=0" };
} }
}); });
return db; return db;
} }
``` ```
[<font color=red>View more >> </font>](https://github.com/sunkaixuan/SqlSugar/wiki/c.GobalFilter ) [<font color=red>View more >> </font>](https://github.com/sunkaixuan/SqlSugar/wiki/c.GobalFilter )
@ -342,7 +342,7 @@ db.DbFirst.IsCreateAttribute().Where("Student").CreateClassFile("c:\\Demo\\5");
## 🥙 14.CodeFirst ## 🥙 14.CodeFirst
```cs ```cs
db.CodeFirst.SetStringDefaultLength(100).BackupTable().InitTables(typeof(CodeTable),typeof(CodeTable2)); //change entity backupTable db.CodeFirst.SetStringDefaultLength(100).BackupTable().InitTables(typeof(CodeTable), typeof(CodeTable2)); //change entity backupTable
db.CodeFirst.SetStringDefaultLength(100).InitTables(typeof(CodeTable), typeof(CodeTable2)); db.CodeFirst.SetStringDefaultLength(100).InitTables(typeof(CodeTable), typeof(CodeTable2));
``` ```
[<font color=red>View more >> </font>](https://github.com/sunkaixuan/SqlSugar/wiki/e.CodeFirst ) [<font color=red>View more >> </font>](https://github.com/sunkaixuan/SqlSugar/wiki/e.CodeFirst )
@ -367,7 +367,7 @@ sdb.Update(obj);
[<font color=red>View more >> </font>](https://github.com/sunkaixuan/SqlSugar/wiki/g.SimpleClient ) [<font color=red>View more >> </font>](https://github.com/sunkaixuan/SqlSugar/wiki/g.SimpleClient )
## 🕹 Code generator ## 🕹 Code generator
https://github.com/sunkaixuan/SoEasyPlatform https://github.com/sunkaixuan/SoEasyPlatform