using SQLitePCL; using SqlSugar; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace OrmTest { public class Unitdsfsssysf { public static void Init() { var db = NewUnitTest.Db; db.CodeFirst.InitTables(); db.DbMaintenance.TruncateTable(); db.Insertable(new Products() { BusinessSliceID = 1, Id = 1, ItemName = "a" }).ExecuteCommand(); var cargolaneDbs = db.Queryable() .Select(it => new { name=it.ItemName, newit=it, }) .ToList(); if (cargolaneDbs.FirstOrDefault().newit.ItemName != "a") { throw new Exception("unit error"); } var cargolaneDbs2 = db.Queryable() .Select(it => new { name = it.ItemName, it, }) .ToList(); if (cargolaneDbs2.FirstOrDefault().it.ItemName != "a") { throw new Exception("unit error"); } var names = new string[] { "aa", "bb" }; var list=db.Queryable().Where(it => names.Any(s => it.Name.Contains(s))) .ToList(); var sql = db.Queryable().Where(it => names.Any(s => it.Name.Contains(s))).ToSqlString(); if (sql.Trim() != "SELECT [Id],[Name],[Price],[CreateTime],[CustomId] FROM [Order] [it] WHERE ( ([it].[Name] like '%'+ N'aa' +'%') OR ([it].[Name] like '%'+ N'bb' +'%') ) ".Trim()) { throw new Exception("unit error"); } var sql2 = db.Queryable().Where(it => names.Any(s => it.Name.Contains(s))).ToSqlString(); if (sql2.Trim() != "SELECT [Id],[Name],[Price],[CreateTime],[CustomId] FROM [Order] [it] WHERE ( ([it].[Name] like '%'+ 'aa' +'%') OR ([it].[Name] like '%'+ 'bb' +'%') ) ".Trim()) { throw new Exception("unit error"); } var ids = new List() { 1, 2 }; var list3 = db.Queryable().Where(it => ids.Any(s => it.Id==s)) .ToList(); } [SugarTable("Unitpsroducsfdsatsfd")] public class Products { /// /// 产品 Id /// [SugarColumn(IsPrimaryKey = true)] public int Id { get; set; } /// /// 物品名称 /// public string ItemName { get; set; } /// /// 关联商品id /// public int BusinessSliceID { get; set; } /// /// 关联商品数据 /// [Navigate(NavigateType.OneToOne, nameof(BusinessSliceID), nameof(Id))] public Products? SliceProduct { get; set; } } [SugarTable("Order")] public class OrderVarchar { [SugarColumn(IsPrimaryKey = true, IsIdentity = true)] public int Id { get; set; } [SugarColumn(SqlParameterDbType =System.Data.DbType.AnsiString)] public string Name { get; set; } public decimal Price { get; set; } [SugarColumn(IsNullable = true)] public DateTime CreateTime { get; set; } [SugarColumn(IsNullable = true)] public int CustomId { get; set; } [SugarColumn(IsIgnore = true)] public List Items { get; set; } } } }