官方:http://simplefx.org/simpledata/docs/index.html
Insert
var user = db.Users.Insert(Name: "Ford", Password: "hoopy", Age: 29);var user = new User {Name = "Zaphod", Password = "zarquon", Age = 42}; var actual = db.Users.Insert(user); //插入id自增值方法 var db = DatabaseHelper.Open().WithOptions(new AdoOptions(identityInsert: true)); var user = db.Users.Insert(Id: 42, Name: "Arthur", Password: "Tea", Age: 30); db.ClearOptions();//批量插入 var users = new[]{new User { Name = "Slartibartfast", Password = "bistromathics", Age = 777 },new User { Name = "Wowbagger", Password = "teatime", Age = int.MaxValue }}; IList<User> actuals = db.Users.Insert(users).ToList<User>(); //User actual = db.Users.Insert(users);//动态对象 dynamic user = new ExpandoObject();user.Name = "Marvin";user.Password = "diodes";user.Age = 42000000;var actual = db.Users.Insert(user);//异常捕捉 ErrorCallback onError = (o, exception) => passed = true; IList<dynamic> actuals = db.Users.Insert(users,onError).ToList();//插入图片byte[] var inserted = db.Images.Insert(Id: 1, TheImage: image);
Update
//通过id修改 db.Users.UpdateById(Id: 1, Name: "Ford", Password: "hoopy", Age: 29); //通过主键修改 var user = new User { Id = 2, Name = "Zaphod", Password = "zarquon", Age = 42 }; db.Users.Update(user); //动态对象修改 dynamic user = new ExpandoObject(); user.Id = 3; user.Name = "Marvin"; user.Password = "diodes"; user.Age = 42000000; db.Users.Update(user);//修改条件,指定修改列 db.Customers.UpdateAll(db.Customers.Orders.OrderId == 1, Name: "Updated"); db.test.SchemaTable.UpdateAll(db.test.SchemaTable.Id == 1138, Description: "Updated" db.CompoundKeyMaster.UpdateAll(db.CompoundKeyMaster.CompoundKeyDetail.Value == 1, Description: "Updated");//批量修改 List<Customer> customers = db.Customers.All().ToList<Customer>(); foreach (var customer in customers) {customer.Address = "Updated"; } db.Customers.Update(customers);
Delete
//指定Id修改 var count = db.DeleteTest.DeleteById(1);//删除全部 var count = db.DeleteTest.DeleteAll();//事物 var tx = db.BeginTransaction(); tx.DeleteTest.Insert(Id: 1); var count = tx.DeleteTest.DeleteById(1); tx.Commit();
Query
//获取总数 var count = db.Users.GetCount();int count = db.Users.GetCount(db.Users.Age > 30);int count = db.Users.GetCountByName("Bob");int max = db.iNethinkCMS_Channel.Select(db.iNethinkCMS_Channel.Id.Max()).ToScalarOrDefault<int>();//存在 db.Users.Exists(); db.Users.Exists(db.Users.Age > 30); db.Users.Exists(db.Users.Age == -1); db.Users.ExistsByName("Bob")var actual = db.Users.QueryById(1).Select(db.Users.Name.As("Alias")).First(); //actual.Alias var actual = db.Users.QueryById(1).Select(db.Users.Name).First(); //actual.Name//1到100中取前10个 var querys = db.PagingTest.QueryById(1.to(100)).Take(10); //1到100中取第11个到20个 var querys = db.PagingTest.QueryById(1.to(100)).Skip(10).Take(10); //排除1到100 ,取101到110 var querys = db.PagingTest.QueryById(1.to(100)).OrderByDescending(db.PagingTest.Id).Skip(0).Take(10); //总数和集合 同时返回 Promise<int> count; var list = db.PagingTest.QueryById(1.to(50)).Take(10).WithTotalCount(out count).ToList();List<dynamic> list = db.PagingTest.QueryById(1.to(50)).Select(db.PagingTest.Id).WithTotalCount(out count).Take(10).ToList();List<dynamic> list = db.PagingTest.QueryById(1.to(50)).Select(db.PagingTest.Id).OrderByDescending(db.PagingTest.Id).WithTotalCount(out count).Take(10).ToList();var list = db.PagingTest.QueryById(1.to(50)).WithTotalCount(out count).Take(10).ToList();//查询多条件 var order = db.Customers.QueryByNameAndAddress("Test", "100 Road").Orders.FirstOrDefault();string name = db.Customers.Query().Select(db.Customers.Name).Where(db.Customers.CustomerId == 0) // There is no CustomerId 0 .OrderByName().Take(1) // Should return only one record no matter what.ToScalarOrDefault<string>();//指定Name生成List List<string> name = db.Customers.Query().Select(db.Customers.Name).OrderByName().ToScalarList<string>(); string[] name = db.Customers.Query().Select(db.Customers.Name).OrderByName().ToScalarArray<string>();