using SqlSugar; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace OrmTest { public class DemoM_UnitOfWork { public static void Init() { Console.WriteLine(""); Console.WriteLine("#### DemoM_UnitOfWork ####"); var db=NewUnitTest.Db; db.CurrentConnectionConfig.ConfigId = "1"; using (var uow = db.CreateContext()) { var o = uow.GetRepository(); var o2 = uow.GetMyRepository>(); var list = o.GetList();//默认仓储 var list2 = o2.CommQuery();//自定义仓储 var list3 = uow.Orders1.GetList();//MyDbContext中的默认仓储 var list4 = uow.Orders2.GetList();//MyDbContext中的自定义仓储 uow.Commit(); } } /// /// 自定义DbContext /// public class MyDbContext : SugarUnitOfWork { /// /// 原生仓储 /// public SimpleClient Orders1 { get; set; } /// ///自定义仓储 /// public DbSet Orders2 { get; set; } } /// /// 自定义仓储 /// /// public class DbSet : SimpleClient where T : class, new() { /// /// 仓储自定义方法 /// /// public List CommQuery() { return base.Context.Queryable().ToList(); } } [Tenant("1")] public class ORDER { [SugarColumn(IsPrimaryKey = true, IsIdentity = true)] public int Id { get; set; } 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; } } } }