From edd85a6381d6b23b85017c04dfd760bfab5805ee Mon Sep 17 00:00:00 2001 From: sunkaixuan <610262374@qq.com> Date: Mon, 6 Nov 2023 21:44:56 +0800 Subject: [PATCH] Update demo --- Src/Asp.NetCore2/SqlSeverTest/1_CodeFirst.cs | 134 +++++++++ Src/Asp.NetCore2/SqlSeverTest/2_DbFirst.cs | 136 +++++++++ Src/Asp.NetCore2/SqlSeverTest/3_EasyQuery.cs | 191 +++++++++++++ Src/Asp.NetCore2/SqlSeverTest/4_JoinQuery.cs | 171 +++++++++++ Src/Asp.NetCore2/SqlSeverTest/5_PageQuery.cs | 112 ++++++++ .../SqlSeverTest/6_NavigationPropertyQuery.cs | 268 ++++++++++++++++++ Src/Asp.NetCore2/SqlSeverTest/7_GroupQuery.cs | 74 +++++ Src/Asp.NetCore2/SqlSeverTest/8_Insert.cs | 66 +++++ Src/Asp.NetCore2/SqlSeverTest/9_Update.cs | 88 ++++++ Src/Asp.NetCore2/SqlSeverTest/Program.cs | 92 +++--- .../SqlSeverTest/SqlSeverTest.csproj | 6 - .../{ => UserTestCases}/Config.cs | 2 +- .../Demo/Demo0_SqlSugarClient.cs | 1 + .../Demo/Demo1_Queryable.cs | 3 +- .../Demo/Demo2_Updateable.cs | 3 +- .../Demo/Demo3_Insertable.cs | 3 +- .../Demo/Demo4_Deleteable.cs | 3 +- .../Demo/Demo5_SqlQueryable.cs | 3 +- .../{ => UserTestCases}/Demo/Demo6_Queue.cs | 3 +- .../{ => UserTestCases}/Demo/Demo7_Ado.cs | 3 +- .../Demo/Demo8_Saveable.cs | 3 +- .../Demo/Demo9_EntityMain.cs | 3 +- .../{ => UserTestCases}/Demo/DemoA_DbMain.cs | 3 +- .../{ => UserTestCases}/Demo/DemoB_Aop.cs | 3 +- .../{ => UserTestCases}/Demo/DemoD_DbFirst.cs | 3 +- .../Demo/DemoE_CodeFirst.cs | 3 +- .../Demo/DemoF_Utilities.cs | 3 +- .../Demo/DemoG_SimpleClient.cs | 3 +- .../{ => UserTestCases}/Demo/DemoH_Tenant.cs | 3 +- .../{ => UserTestCases}/Demo/DemoJ_Report.cs | 3 +- .../Demo/DemoL_Snowflake.cs | 5 +- .../Demo/DemoM_UnitOfWork.cs | 0 .../Demo/DemoN_SplitTable.cs | 5 +- .../Demo/Democ_GobalFilter.cs | 3 +- .../Models/AttributeTable.cs | 0 .../{ => UserTestCases}/Models/Custom.cs | 0 .../Models/EntityMapper.cs | 0 .../{ => UserTestCases}/Models/Mapper.cs | 0 .../{ => UserTestCases}/Models/Order.cs | 0 .../{ => UserTestCases}/Models/OrderItem.cs | 0 .../Models/SubInsertTest.cs | 0 .../{ => UserTestCases}/Models/TestTree.cs | 0 .../{ => UserTestCases}/Models/Tree.cs | 0 .../{ => UserTestCases}/Models/ViewOrder.cs | 0 .../SqlSeverTest/UserTestCases/Program.cs | 51 ++++ .../UnitTest/AnimalTest.cs | 0 .../UnitTest/CrossDatabase01.cs | 0 .../UnitTest/EntityInfoTest.cs | 3 +- .../{ => UserTestCases}/UnitTest/Main.cs | 3 +- .../UnitTest/OneToManyInString.cs | 0 .../{ => UserTestCases}/UnitTest/Test01.cs | 0 .../{ => UserTestCases}/UnitTest/UAdo.cs | 0 .../{ => UserTestCases}/UnitTest/UBulkCopy.cs | 0 .../UnitTest/UCodeFirst.cs | 0 .../{ => UserTestCases}/UnitTest/UCustom01.cs | 3 +- .../UnitTest/UCustom012.cs | 0 .../UnitTest/UCustom014.cs | 3 +- .../UnitTest/UCustom015.cs | 3 +- .../UnitTest/UCustom019.cs | 0 .../{ => UserTestCases}/UnitTest/UCustom02.cs | 0 .../{ => UserTestCases}/UnitTest/UCustom03.cs | 0 .../{ => UserTestCases}/UnitTest/UEnum.cs | 0 .../{ => UserTestCases}/UnitTest/UFilter.cs | 0 .../{ => UserTestCases}/UnitTest/UInsert.cs | 0 .../{ => UserTestCases}/UnitTest/UJson.cs | 0 .../UnitTest/UJsonsdafa.cs | 0 .../UnitTest/UNavDynamic111N.cs | 0 .../UnitTest/UOneManyMany.cs | 0 .../UnitTest/UOneManyMany2.cs | 0 .../UnitTest/UOneManyMany3.cs | 0 .../UnitTest/UOneManyMany4.cs | 0 .../UnitTest/UOneManyMany5.cs | 0 .../UnitTest/UOneManyMany6.cs | 0 .../UnitTest/UOneManyMany7.cs | 0 .../UnitTest/UQueryable.cs | 0 .../UnitTest/UQueryable2.cs | 0 .../UnitTest/UQueryableAsync.cs | 0 .../{ => UserTestCases}/UnitTest/UQueue.cs | 0 .../{ => UserTestCases}/UnitTest/UThread.cs | 3 +- .../{ => UserTestCases}/UnitTest/UThread2.cs | 0 .../{ => UserTestCases}/UnitTest/UThread3.cs | 0 .../{ => UserTestCases}/UnitTest/UTran.cs | 0 .../{ => UserTestCases}/UnitTest/UValidate.cs | 0 .../UnitTest/UinitCustomConvert.cs | 0 .../UnitTest/UinitUpdateNavOneToOne.cs | 0 .../{ => UserTestCases}/UnitTest/UnitBool.cs | 0 .../UnitTest/UnitBulkMerge.cs | 0 .../UnitTest/UnitCreateNavClass.cs | 0 .../UnitTest/UnitCustom020.cs | 0 .../UnitTest/UnitFilter.cs | 0 .../UnitTest/UnitGridSave.cs | 0 .../UnitTest/UnitManyToMany.cs | 0 .../UnitTest/UnitNavDynamic.cs | 0 .../UnitTest/UnitOneToMany.cs | 0 .../UnitTest/UnitOneToMany2.cs | 0 .../UnitTest/UnitOneToManyUpdate21.cs | 0 .../UnitTest/UnitOneToManyafdaa.cs | 0 .../UnitTest/UnitOneToOneDel.cs | 3 +- .../UnitTest/UnitOneToOneNAny.cs | 0 .../UnitTest/UnitSplitTask.cs | 0 .../UnitTest/UnitStringToExp.cs | 0 .../UnitTest/UnitSubToList.cs | 3 +- .../{ => UserTestCases}/UnitTest/UnitTest.cs | 0 .../UnitTest/UnitTestReturnPkList.cs | 0 .../{ => UserTestCases}/UnitTest/UnitTool.cs | 0 .../UnitTest/UnitUpdateColums.cs | 0 .../UnitTest/Unitadfasdfa.cs | 0 .../UnitTest/Unitadfasfa.cs | 0 .../UnitTest/Unitasf1/EmpDepartmentJob.cs | 0 .../UnitTest/Unitasf1/EmpInformation.cs | 0 .../UnitTest/Unitasf1/EmpLicense.cs | 0 .../UnitTest/Unitasf1/EmpLicenseLogOff.cs | 0 .../Unitasf1/PRT_BMS_SA_WEBCON_DOC_V.cs | 0 .../Unitasf1/PRT_BMS_SA_WEBCON_DTL_VP.cs | 0 .../UnitTest/Unitasf1/Unitasf1.cs | 0 .../UnitTest/Unitasf1/entity/app_category.cs | 0 .../UnitTest/Unitasf1/entity/app_comment.cs | 0 .../UnitTest/Unitasf1/entity/app_revision.cs | 0 .../UnitTest/Unitasf1/entity/app_topic.cs | 0 .../UnitTest/Unitasf1/entityMap/app_topic.cs | 0 .../Unitasf1/entityMapDTO/app_topic.cs | 0 .../UnitTest/Unitfafaf231.cs | 3 +- .../UnitTest/Unitrasdfa.cs | 0 .../UnitTest/UpdateNavOneToOne.cs | 0 .../UnitTest/Updateable.cs | 0 Src/Asp.NetCore2/SqlSeverTest/a1_Delete.cs | 186 ++++++++++++ Src/Asp.NetCore2/SqlSeverTest/a2_Sql.cs | 74 +++++ Src/Asp.NetCore2/SqlSeverTest/a3_Merge.cs | 51 ++++ 128 files changed, 1717 insertions(+), 77 deletions(-) create mode 100644 Src/Asp.NetCore2/SqlSeverTest/1_CodeFirst.cs create mode 100644 Src/Asp.NetCore2/SqlSeverTest/2_DbFirst.cs create mode 100644 Src/Asp.NetCore2/SqlSeverTest/3_EasyQuery.cs create mode 100644 Src/Asp.NetCore2/SqlSeverTest/4_JoinQuery.cs create mode 100644 Src/Asp.NetCore2/SqlSeverTest/5_PageQuery.cs create mode 100644 Src/Asp.NetCore2/SqlSeverTest/6_NavigationPropertyQuery.cs create mode 100644 Src/Asp.NetCore2/SqlSeverTest/7_GroupQuery.cs create mode 100644 Src/Asp.NetCore2/SqlSeverTest/8_Insert.cs create mode 100644 Src/Asp.NetCore2/SqlSeverTest/9_Update.cs rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Config.cs (96%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Demo/Demo0_SqlSugarClient.cs (99%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Demo/Demo1_Queryable.cs (99%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Demo/Demo2_Updateable.cs (98%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Demo/Demo3_Insertable.cs (98%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Demo/Demo4_Deleteable.cs (97%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Demo/Demo5_SqlQueryable.cs (96%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Demo/Demo6_Queue.cs (97%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Demo/Demo7_Ado.cs (97%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Demo/Demo8_Saveable.cs (95%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Demo/Demo9_EntityMain.cs (96%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Demo/DemoA_DbMain.cs (96%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Demo/DemoB_Aop.cs (97%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Demo/DemoD_DbFirst.cs (98%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Demo/DemoE_CodeFirst.cs (97%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Demo/DemoF_Utilities.cs (96%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Demo/DemoG_SimpleClient.cs (95%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Demo/DemoH_Tenant.cs (98%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Demo/DemoJ_Report.cs (98%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Demo/DemoL_Snowflake.cs (95%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Demo/DemoM_UnitOfWork.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Demo/DemoN_SplitTable.cs (98%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Demo/Democ_GobalFilter.cs (98%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Models/AttributeTable.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Models/Custom.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Models/EntityMapper.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Models/Mapper.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Models/Order.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Models/OrderItem.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Models/SubInsertTest.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Models/TestTree.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Models/Tree.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/Models/ViewOrder.cs (100%) create mode 100644 Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Program.cs rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/AnimalTest.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/CrossDatabase01.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/EntityInfoTest.cs (98%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/Main.cs (98%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/OneToManyInString.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/Test01.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UAdo.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UBulkCopy.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UCodeFirst.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UCustom01.cs (97%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UCustom012.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UCustom014.cs (99%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UCustom015.cs (98%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UCustom019.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UCustom02.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UCustom03.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UEnum.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UFilter.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UInsert.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UJson.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UJsonsdafa.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UNavDynamic111N.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UOneManyMany.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UOneManyMany2.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UOneManyMany3.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UOneManyMany4.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UOneManyMany5.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UOneManyMany6.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UOneManyMany7.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UQueryable.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UQueryable2.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UQueryableAsync.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UQueue.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UThread.cs (99%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UThread2.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UThread3.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UTran.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UValidate.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UinitCustomConvert.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UinitUpdateNavOneToOne.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UnitBool.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UnitBulkMerge.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UnitCreateNavClass.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UnitCustom020.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UnitFilter.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UnitGridSave.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UnitManyToMany.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UnitNavDynamic.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UnitOneToMany.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UnitOneToMany2.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UnitOneToManyUpdate21.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UnitOneToManyafdaa.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UnitOneToOneDel.cs (96%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UnitOneToOneNAny.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UnitSplitTask.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UnitStringToExp.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UnitSubToList.cs (99%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UnitTest.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UnitTestReturnPkList.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UnitTool.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UnitUpdateColums.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/Unitadfasdfa.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/Unitadfasfa.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/Unitasf1/EmpDepartmentJob.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/Unitasf1/EmpInformation.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/Unitasf1/EmpLicense.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/Unitasf1/EmpLicenseLogOff.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/Unitasf1/PRT_BMS_SA_WEBCON_DOC_V.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/Unitasf1/PRT_BMS_SA_WEBCON_DTL_VP.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/Unitasf1/Unitasf1.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/Unitasf1/entity/app_category.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/Unitasf1/entity/app_comment.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/Unitasf1/entity/app_revision.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/Unitasf1/entity/app_topic.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/Unitasf1/entityMap/app_topic.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/Unitasf1/entityMapDTO/app_topic.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/Unitfafaf231.cs (98%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/Unitrasdfa.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/UpdateNavOneToOne.cs (100%) rename Src/Asp.NetCore2/SqlSeverTest/{ => UserTestCases}/UnitTest/Updateable.cs (100%) create mode 100644 Src/Asp.NetCore2/SqlSeverTest/a1_Delete.cs create mode 100644 Src/Asp.NetCore2/SqlSeverTest/a2_Sql.cs create mode 100644 Src/Asp.NetCore2/SqlSeverTest/a3_Merge.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/1_CodeFirst.cs b/Src/Asp.NetCore2/SqlSeverTest/1_CodeFirst.cs new file mode 100644 index 000000000..14f37a858 --- /dev/null +++ b/Src/Asp.NetCore2/SqlSeverTest/1_CodeFirst.cs @@ -0,0 +1,134 @@ +using SqlSugar; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace OrmTest +{ + /// + /// Class for demonstrating CodeFirst initialization operations + /// 用于展示 CodeFirst 初始化操作的类 + /// + public class _1_CodeFirst + { + + public static void Init() + { + // Get a new database instance + // 获取新的数据库实例 + var db = DbHelper.GetNewDb(); + + // Create the database if it doesn't exist + // 如果数据库不存在,则创建数据库 + db.DbMaintenance.CreateDatabase(); + + // Initialize tables based on UserInfo001 entity class + // 根据 UserInfo001 实体类初始化表 + db.CodeFirst.InitTables(); + + //Table structure and class are different + //表结构和类存在差异 初始化表 + db.CodeFirst.InitTables(); + + //Insert + //插入 + var id=db.Insertable(new UserInfo001() + { + Context = "Context", + Email="dfafa@qq.com", + Price=Convert.ToDecimal(1.1), + UserName="admin", + RegistrationDate=DateTime.Now, + + }).ExecuteReturnIdentity(); + + //Query + //查询 + var userInfo=db.Queryable().InSingle(id); + + //Update + //更新 + db.Updateable(userInfo).ExecuteCommand(); + + //Delete + //删除 + db.Deleteable(userInfo).ExecuteCommand(); + } + + /// + /// User information entity class + /// 用户信息实体类 + /// + public class UserInfo001 + { + /// + /// User ID (Primary Key) + /// 用户ID(主键) + /// + [SugarColumn(IsIdentity = true, IsPrimaryKey = true)] + public int UserId { get; set; } + + /// + /// User name + /// 用户名 + /// + [SugarColumn(Length = 50, IsNullable = false)] + public string UserName { get; set; } + + /// + /// User email + /// 用户邮箱 + /// + [SugarColumn(IsNullable = true)] + public string Email { get; set; } + + + /// + /// Product price + /// 产品价格 + /// + public decimal Price { get; set; } + + /// + /// User context + /// 用户内容 + /// + [SugarColumn(ColumnDataType = StaticConfig.CodeFirst_BigString, IsNullable = true)] + public string Context { get; set; } + + /// + /// User registration date + /// 用户注册日期 + /// + [SugarColumn(IsNullable = true)] + public DateTime? RegistrationDate { get; set; } + } + + + /// + /// User information entity class + /// 用户信息实体类 + /// + [SugarTable("UserInfoAAA01")] + public class UserInfo002 + { + /// + /// User ID (Primary Key) + /// 用户ID(主键) + /// + [SugarColumn(IsIdentity = true,ColumnName ="Id", IsPrimaryKey = true)] + public int UserId { get; set; } + + /// + /// User name + /// 用户名 + /// + [SugarColumn(Length = 50,ColumnName ="Name", IsNullable = false)] + public string UserName { get; set; } + + + } + } +} \ No newline at end of file diff --git a/Src/Asp.NetCore2/SqlSeverTest/2_DbFirst.cs b/Src/Asp.NetCore2/SqlSeverTest/2_DbFirst.cs new file mode 100644 index 000000000..a4ba49fc0 --- /dev/null +++ b/Src/Asp.NetCore2/SqlSeverTest/2_DbFirst.cs @@ -0,0 +1,136 @@ +using SqlSugar; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace OrmTest +{ + internal class _2_DbFirst + { + /// + /// 初始化方法,包含各种DbFirst操作的演示 + /// Initialization method containing demonstrations of various DbFirst operations + /// + public static void Init() + { + var db = DbHelper.GetNewDb(); + + // 生成干净的实体类文件 + // Generate clean entity class files + Demo1(db); + + // 生成带有SqlSugar特性的实体类文件 + // Generate entity class files with SqlSugar attributes + Demo2(db); + + // 支持字符串类型的Nullable特性 + // Support String Nullable attribute + Demo3(db); + + // 格式化类名、属性名和文件名 + // Format class names, property names, and file names + Demo4(db); + + // 条件过滤生成实体类文件 + // Generate entity class files with condition filtering + Demo5(db); + + // 修改模版生成实体类文件(禁用IsCreateAttribute,避免冲突) + // Generate entity class files with modified templates (disable IsCreateAttribute to avoid conflicts) + Demo6(db); + } + + /// + /// 生成干净的实体类文件 + /// Generate clean entity class files + /// + private static void Demo1(SqlSugarClient db) + { + db.DbFirst.CreateClassFile("c:\\Demo\\1", "Models"); + } + + /// + /// 生成带有SqlSugar特性的实体类文件 + /// Generate entity class files with SqlSugar attributes + /// + private static void Demo2(SqlSugarClient db) + { + db.DbFirst.IsCreateAttribute().CreateClassFile("c:\\Demo\\2", "Models"); + } + + /// + /// 支持字符串类型的Nullable特性 + /// Support String Nullable attribute + /// + private static void Demo3(SqlSugarClient db) + { + db.DbFirst.IsCreateAttribute().StringNullable().CreateClassFile("c:\\Demo\\3", "Models"); + } + + /// + /// 格式化类名、属性名和文件名 + /// Format class names, property names, and file names + /// + private static void Demo4(SqlSugarClient db) + { + db.DbFirst + .IsCreateAttribute() + .FormatFileName(it => "File_" + it) + .FormatClassName(it => "Class_" + it) + .FormatPropertyName(it => "Property_" + it) + .CreateClassFile("c:\\Demo\\4", "Models"); + } + + /// + /// 条件过滤生成实体类文件 + /// Generate entity class files with condition filtering + /// + private static void Demo5(SqlSugarClient db) + { + db.DbFirst.IsCreateAttribute().Where(it => it.ToLower() == "userinfo001").CreateClassFile("c:\\Demo\\5", "Models"); + } + + /// + /// 修改模版生成实体类文件(禁用IsCreateAttribute,避免冲突) + /// Generate entity class files with modified templates (disable IsCreateAttribute to avoid conflicts) + /// + private static void Demo6(SqlSugarClient db) + { + db.DbFirst + // 类 + .SettingClassTemplate(old => { return old;/* 修改old值替换 */ }) + // 类构造函数 + .SettingConstructorTemplate(old => { return old;/* 修改old值替换 */ }) + .SettingNamespaceTemplate(old => + { + return old + "\r\nusing SqlSugar;"; // 追加引用SqlSugar + }) + // 属性备注 + .SettingPropertyDescriptionTemplate(old => { return old;/* 修改old值替换 */}) + + // 属性:新重载 完全自定义用配置 + .SettingPropertyTemplate((columns, temp, type) => + { + + var columnattribute = "\r\n [SugarColumn({0})]"; + List attributes = new List(); + if (columns.IsPrimarykey) + attributes.Add("IsPrimaryKey=true"); + if (columns.IsIdentity) + attributes.Add("IsIdentity=true"); + if (attributes.Count == 0) + { + columnattribute = ""; + } + return temp.Replace("{PropertyType}", type) + .Replace("{PropertyName}", columns.DbColumnName) + .Replace("{SugarColumn}", string.Format(columnattribute, string.Join(",", attributes))); + }) + + .CreateClassFile("c:\\Demo\\6"); + } + } +} + \ No newline at end of file diff --git a/Src/Asp.NetCore2/SqlSeverTest/3_EasyQuery.cs b/Src/Asp.NetCore2/SqlSeverTest/3_EasyQuery.cs new file mode 100644 index 000000000..b4544bab0 --- /dev/null +++ b/Src/Asp.NetCore2/SqlSeverTest/3_EasyQuery.cs @@ -0,0 +1,191 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using SqlSugar; + +namespace OrmTest +{ + internal class _3_EasyQuery + { + /// + /// 初始化方法,包含各种查询操作的演示 + /// Initialization method containing demonstrations of various query operations + /// + public static void Init() + { + // 创建表并插入一条记录 + // Create table and insert a record + CreateTable(); + + // 查询所有学生信息 + // Query all student records + GetAllStudents(); + + // 查询学生总数 + // Get the total count of students + GetStudentCount(); + + // 按条件查询学生信息 + // Query student records based on conditions + GetStudentsByCondition(); + + // 模糊查询学生信息(名字包含"jack"的学生) + // Fuzzy search for student records (students with names containing "jack") + GetStudentsByName("jack"); + + // 根据学生ID查询单个学生 + // Query a single student by student ID + GetStudentById(1); + + // 获取Student03表中的最大Id + // Get the maximum ID from the Student03 table + GetMaxStudentId(); + + // 简单排序(按照Id降序排序) + // Simple sorting (sorting by Id in descending order) + GetStudentsOrderedByIdDesc(); + + // 查询学生姓名列表 + // Query the list of student names + GetStudentNames(); + } + + /// + /// 创建表并插入一条记录 + /// Create table and insert a record + /// + private static void CreateTable() + { + SqlSugarClient db = DbHelper.GetNewDb(); + db.CodeFirst.InitTables(); + db.Insertable(new Student03() { Name = "name" + SnowFlakeSingle.Instance.NextId() }) + .ExecuteCommand(); + } + + /// + /// 查询所有学生信息 + /// Query all student records + /// + private static void GetAllStudents() + { + SqlSugarClient db = DbHelper.GetNewDb(); + var students = db.Queryable().ToList(); + // 处理查询结果 + // Process the query results + } + + /// + /// 查询学生总数 + /// Get the total count of students + /// + private static void GetStudentCount() + { + SqlSugarClient db = DbHelper.GetNewDb(); + var count = db.Queryable().Count(); + // 处理查询结果 + // Process the query results + } + + /// + /// 按条件查询学生信息 + /// Query student records based on conditions + /// + private static void GetStudentsByCondition() + { + SqlSugarClient db = DbHelper.GetNewDb(); + + // 查询name字段不为null的学生 + // Query students where the 'name' field is not null + var studentsWithNameNotNull = db.Queryable().Where(it => it.Name != null).ToList(); + + // 查询name字段为null的学生 + // Query students where the 'name' field is null + var studentsWithNameNull = db.Queryable().Where(it => it.Name == null).ToList(); + + // 查询name字段不为空的学生 + // Query students where the 'name' field is not empty + var studentsWithNameNotEmpty = db.Queryable().Where(it => it.Name != "").ToList(); + + // 多条件查询 + // Query students with multiple conditions + var studentsWithMultipleConditions = db.Queryable().Where(it => it.Id > 10 && it.Name == "a").ToList(); + + // 动态OR查询 + // Dynamic OR query + var exp = Expressionable.Create(); + exp.OrIF(true, it => it.Id == 1); + exp.Or(it => it.Name.Contains("jack")); + var studentsWithDynamicOr = db.Queryable().Where(exp.ToExpression()).ToList(); + + } + + /// + /// 模糊查询学生信息 + /// Fuzzy search for student records + /// + private static void GetStudentsByName(string keyword) + { + SqlSugarClient db = DbHelper.GetNewDb(); + var students = db.Queryable().Where(it => it.Name.Contains(keyword)).ToList(); + // 处理查询结果 + // Process the query results + } + + /// + /// 根据学生ID查询单个学生 + /// Query a single student by student ID + /// + private static void GetStudentById(int id) + { + SqlSugarClient db = DbHelper.GetNewDb(); + var student = db.Queryable().Single(it => it.Id == id); + // 处理查询结果 + // Process the query results + } + + /// + /// 获取Student03表中的最大Id + /// Get the maximum ID from the Student03 table + /// + private static void GetMaxStudentId() + { + SqlSugarClient db = DbHelper.GetNewDb(); + var maxId = db.Queryable().Max(it => it.Id); + // 处理查询结果 + // Process the query results + } + + /// + /// 简单排序(按照Id降序排序) + /// Simple sorting (sorting by Id in descending order) + /// + private static void GetStudentsOrderedByIdDesc() + { + SqlSugarClient db = DbHelper.GetNewDb(); + var students = db.Queryable().OrderBy(sc => sc.Id, OrderByType.Desc).ToList(); + // 处理查询结果 + // Process the query results + } + + /// + /// 查询学生姓名列表 + /// Query the list of student names + /// + private static void GetStudentNames() + { + SqlSugarClient db = DbHelper.GetNewDb(); + var studentNames = db.Queryable().Select(it => it.Name).ToList(); + // 处理查询结果 + // Process the query results + } + + public class Student03 + { + [SugarColumn(IsPrimaryKey = true, IsIdentity = true)] + public int Id { get; set; } + public string Name { get; set; } + } + } +} \ No newline at end of file diff --git a/Src/Asp.NetCore2/SqlSeverTest/4_JoinQuery.cs b/Src/Asp.NetCore2/SqlSeverTest/4_JoinQuery.cs new file mode 100644 index 000000000..979152df8 --- /dev/null +++ b/Src/Asp.NetCore2/SqlSeverTest/4_JoinQuery.cs @@ -0,0 +1,171 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using static OrmTest._4_JoinQuery; + +namespace OrmTest +{ + internal class _4_JoinQuery + { + public static void Init() + { + InitializeDatabase(); + SyntaxSugar1(); + SyntaxSugar2(); + SyntaxSugar3(); + } + /// + /// 使用语法糖1进行联表查询。 + /// Performs a Join query using Syntax Sugar 1. + /// + /// 查询结果列表。The list of query results. + public static List SyntaxSugar1() + { + var db = DbHelper.GetNewDb(); + var query = db.Queryable() + .LeftJoin((o, cus) => o.CustomId == cus.Id) + .LeftJoin((o, cus, oritem) => o.Id == oritem.OrderId) + .Where(o => o.Id == 1) + .Select((o, cus, oritem) => new ViewOrder2 { Id = o.Id,Name=o.Name, CustomName = cus.Name }) + .ToList(); + + return query; + } + + /// + /// 使用语法糖2进行联表查询。 + /// Performs a Join query using Syntax Sugar 2. + /// + /// 查询结果列表。The list of query results. + public static List SyntaxSugar2() + { + var db = DbHelper.GetNewDb(); + var rightQueryable = db.Queryable() + .LeftJoin((o, i) => o.Id == i.Id) + .Select(o => o); + + var list = db.Queryable() + .LeftJoin(rightQueryable, (c, j) => c.CustomId == j.Id) + .Select(c => c) + .ToList(); + return list; + } + + /// + /// 使用语法糖3进行联表查询。 + /// Performs a Join query using Syntax Sugar 3. + /// + /// 查询结果列表。The list of query results. + public static List SyntaxSugar3() + { + var db = DbHelper.GetNewDb(); + var list = db.Queryable((o, i, c) => o.Id == i.OrderId && c.Id == o.CustomId) + .Select((o, i, c) => new ViewOrder2 { Id = o.Id, Name = o.Name, CustomName = c.Name }) + .ToList(); + + return list; + } + + + static void InitializeDatabase() + { + // Initialize order data + // 初始化订单数据 + var orders = new List + { + new Order { Id = 1, Name = "Order 1", CustomId = 1 }, + new Order { Id = 2, Name = "Order 2", CustomId = 2 }, + new Order { Id = 3, Name = "Order 3", CustomId = 1 }, + }; + + // Initialize order details data + // 初始化订单详情数据 + var orderDetails = new List + { + new OrderDetail { Id = 1, OrderId = 1 }, + new OrderDetail { Id = 2, OrderId = 2 }, + new OrderDetail { Id = 3, OrderId = 3 }, + }; + + // Initialize customer data + // 初始化客户数据 + var customers = new List + { + new Custom { Id = 1, Name = "Customer 1" }, + new Custom { Id = 2, Name = "Customer 2" }, + new Custom { Id = 3, Name = "Customer 3" }, + }; + + // Get database connection + // 获取数据库连接 + var db = DbHelper.GetNewDb(); + + // Initialize database tables and truncate data + // 初始化数据库表并清空数据 + db.CodeFirst.InitTables(); + db.DbMaintenance.TruncateTable(); + + // Insert data into tables + // 向表中插入数据 + db.Insertable(orders).ExecuteCommand(); + db.Insertable(orderDetails).ExecuteCommand(); + db.Insertable(customers).ExecuteCommand(); + } + + /// + /// 订单实体类。 + /// Order entity class. + /// + [SqlSugar.SugarTable("Order04")] + public class Order + { + [SqlSugar.SugarColumn(IsPrimaryKey = true, IsIdentity = true)] + public int Id { get; set; } + public string Name { get; set; } + public int CustomId { get; set; } + // 其他订单相关属性... + } + + /// + /// 订单详情实体类。 + /// Order detail entity class. + /// + [SqlSugar.SugarTable("OrderDetail04")] + public class OrderDetail + { + [SqlSugar.SugarColumn(IsPrimaryKey = true, IsIdentity = true)] + public int Id { get; set; } + public int OrderId { get; set; } + // 其他订单详情相关属性... + } + + /// + /// 客户实体类。 + /// Customer entity class. + /// + [SqlSugar.SugarTable("Custom04")] + public class Custom + { + [SqlSugar.SugarColumn(IsPrimaryKey = true, IsIdentity = true)] + public int Id { get; set; } + public string Name { get; set; } + // 其他客户相关属性... + } + + + + /// + /// 类1实体类。 + /// Class1 entity class. + /// + public class ViewOrder2 + { + public int Id { get; set; } + public string Name { get; set; } + public string CustomName { get; set; } + // 其他类1相关属性... + } + } +} diff --git a/Src/Asp.NetCore2/SqlSeverTest/5_PageQuery.cs b/Src/Asp.NetCore2/SqlSeverTest/5_PageQuery.cs new file mode 100644 index 000000000..fba71c6f7 --- /dev/null +++ b/Src/Asp.NetCore2/SqlSeverTest/5_PageQuery.cs @@ -0,0 +1,112 @@ +using OrmTest; +using SqlSugar; +using System; +using System.Linq; +using System.Threading.Tasks; + +public class _5_PageQuery +{ + public static void Init() + { + + int pagenumber = 1; + int pageSize = 20; + int totalCount = 0; + + SqlSugarClient db = DbHelper.GetNewDb(); + + //建表 + //Create table + AddTestData(db); + + // 同步分页方法 + // Synchronous pagination method + SyncPagination(db, pagenumber, pageSize, ref totalCount); + + // 异步分页方法 + // Asynchronous pagination method + AsyncPagination(db, pagenumber, pageSize) .GetAwaiter() .GetResult(); + } + + public static void AddTestData(SqlSugarClient db) + { + + //建表 + //Create table + db.CodeFirst.InitTables(); + + // 添加学校数据 + // Add school data + var school1 = new School { Name = "School A" }; + var school2 = new School { Name = "School B" }; + db.Insertable(school1).ExecuteCommand(); + db.Insertable(school2).ExecuteCommand(); + + // 添加学生数据 + // Add student data + var student1 = new Student { SchoolId = school1.Id, Name = "John", CreateTime = DateTime.Now }; + var student2 = new Student { SchoolId = school1.Id, Name = "Alice", CreateTime = DateTime.Now }; + + db.Insertable(student1).ExecuteCommand(); + db.Insertable(student2).ExecuteCommand(); + + Console.WriteLine("Test data added successfully."); + } + + /// + /// 同步分页示例 + /// Synchronous pagination example + /// + /// 数据库连接对象 Database connection object + /// 页码 Page number + /// 每页大小 Page size + /// 总记录数 Total record count + public static void SyncPagination(SqlSugarClient db, int pagenumber, int pageSize, ref int totalCount) + { + // 同步单表分页 + // Synchronous pagination for a single table + var page = db.Queryable().ToPageList(pagenumber, pageSize, ref totalCount); + + // 同步多表分页 + // Synchronous pagination for multiple tables + var list = db.Queryable().LeftJoin((st, sc) => st.SchoolId == sc.Id) + .Select((st, sc) => new { Id = st.Id, Name = st.Name, SchoolName = sc.Name }) + .ToPageList(pagenumber, pageSize, ref totalCount); + + // offset分页 + // offset pagination + var sqlServerPage = db.Queryable().ToOffsetPage(pagenumber, pageSize); + + } + + /// + /// 异步分页示例 + /// Asynchronous pagination example + /// + /// 数据库连接对象 Database connection object + /// 页码 Page number + /// 每页大小 Page size + public static async Task AsyncPagination(SqlSugarClient db, int pagenumber, int pageSize) + { + RefAsync total = 0; + // 异步分页 + // Asynchronous pagination + var orders = await db.Queryable().ToPageListAsync(pagenumber, pageSize, total); + } + [SugarTable("Student05")] + public class Student + { + [SugarColumn(IsIdentity =true,IsPrimaryKey =true)] + public int Id { get; set; } + public int SchoolId { get; set; } + public string Name { get; set; } + public DateTime CreateTime { get; set; } + } + [SugarTable("School05")] + public class School + { + [SugarColumn(IsIdentity = true, IsPrimaryKey = true)] + public int Id { get; set; } + public string Name { get; set; } + } +} \ No newline at end of file diff --git a/Src/Asp.NetCore2/SqlSeverTest/6_NavigationPropertyQuery.cs b/Src/Asp.NetCore2/SqlSeverTest/6_NavigationPropertyQuery.cs new file mode 100644 index 000000000..6dec5075e --- /dev/null +++ b/Src/Asp.NetCore2/SqlSeverTest/6_NavigationPropertyQuery.cs @@ -0,0 +1,268 @@ +using SqlSugar; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace OrmTest +{ + internal class _6_NavQuery + { + /// + /// Initialize navigation query examples. + /// 初始化导航查询示例。 + /// + public static void Init() + { + var db = DbHelper.GetNewDb(); + + // Initialize database table structures. + // 初始化数据库表结构。 + InitializeDatabase(db); + + // One-to-One navigation query test. + // 一对一导航查询测试。 + OneToOneTest(db); + + // One-to-Many navigation query test. + // 一对多导航查询测试。 + OneToManyTest(db); + + // Many-to-Many navigation query test. + // 多对多导航查询测试。 + ManyToManyTest(db); + } + + /// + /// Test many-to-many navigation queries. + /// 测试多对多导航查询。 + /// + private static void ManyToManyTest(SqlSugarClient db) + { + // Many-to-many navigation query, query table A and include its BList. + // 多对多导航查询,查询A表,并包含其BList。 + var list4 = db.Queryable().Includes(it => it.BList).ToList(); + + // Many-to-many navigation query with filtered BList while preserving the original A records, regardless of the filter on BList. + // 使用过滤条件的多对多导航查询,在过滤BList的同时保持A表的原始记录,不受BList过滤条件的影响。 + var list5 = db.Queryable().Includes(it => it.BList.Where(s => s.BId == 1).ToList()).ToList(); + + // Many-to-many navigation query with filtered A records while preserving the original BList, regardless of the filter on A records. + // 使用过滤条件的多对多导航查询,在过滤A表的同时保持BList的原始记录,不受A表过滤条件的影响。 + var list6 = db.Queryable().Includes(it => it.BList) + .Where(it =>it.BList.Any(s => s.BId == 1)).ToList(); + + // Many-to-many navigation query with filtered BList and filtered A records, but not preserving the original A and B records. + // 使用过滤条件的多对多导航查询,在A表中过滤BList并过滤A记录,但不保持A表和B表的原始记录。 + var list7 = db.Queryable() + .Includes(it => it.BList.Where(s => s.BId == 1).ToList()) + .Where(it => it.BList.Any(s => s.BId == 1)).ToList(); + } + + /// + /// Test one-to-many navigation queries. + /// 测试一对多导航查询。 + /// + private static void OneToManyTest(SqlSugarClient db) + { + // One-to-many navigation query, query table Student and include its Books. + // 一对多导航查询,查询Student表,并包含其Books。 + var list4 = db.Queryable().Includes(it => it.Books).ToList(); + + // One-to-many navigation query with filtered Books while preserving the original Student records, regardless of the filter on Books. + // 使用过滤条件的一对多导航查询,在过滤Books的同时保持Student表的原始记录,不受Books过滤条件的影响。 + var list5 = db.Queryable().Includes(it => it.Books.Where(s => s.BookId == 1).ToList()).ToList(); + + // One-to-many navigation query with filtered Student records while preserving the original Books, regardless of the filter on Student records. + // 使用过滤条件的一对多导航查询,在过滤Student表的同时保持Books的原始记录,不受Student表过滤条件的影响。 + var list6 = db.Queryable().Includes(it => it.Books) + .Where(it => it.Books.Any(s => s.BookId == 1)).ToList(); + + // One-to-many navigation query with filtered Books and filtered Student records, but not preserving the original Student and Books records. + // 使用过滤条件的一对多导航查询,在Student表中过滤Books并过滤Student记录,但不保持Student表和Books表的原始记录。 + var list7 = db.Queryable() + .Includes(it => it.Books.Where(s => s.BookId == 1).ToList()) + .Where(it => it.Books.Any(s => s.BookId == 1)).ToList(); + } + + /// + /// Test one-to-one navigation queries. + /// 测试一对一导航查询。 + /// + private static void OneToOneTest(SqlSugarClient db) + { + // One-to-one navigation query with condition, query table Student and include its associated School with specific SchoolId. + // 带条件的一对一导航查询,查询Student表,并包含其关联的School表,条件为特定的SchoolId。 + var list = db.Queryable() + .Where(it => it.School.SchoolId == 1) + .ToList(); + + // Inner join navigation query, query table Student and include its associated School. + // 内连接导航查询,查询Student表,并包含其关联的School表。 + var list2 = db.Queryable().IncludeInnerJoin(it => it.School) + .ToList(); + + // Includes navigation query, query table Student and include its associated School. + // 包含导航查询,查询Student表,并包含其关联的School表。 + var list3 = db.Queryable().Includes(it => it.School).ToList(); + } + + /// + /// Initialize database tables and insert sample data for navigation query examples. + /// 初始化导航查询示例的数据库表并插入示例数据。 + /// + private static void InitializeDatabase(SqlSugarClient db) + { + // Initialize and truncate tables for Student, School, and Book entities. + // 初始化并清空Student、School和Book表。 + db.CodeFirst.InitTables(); + db.DbMaintenance.TruncateTable(); + + // Sample data for Student, School, and Book entities. + // Student、School和Book表的示例数据。 + var students = new List + { + new Student + { + Name = "Student 1", + SexCode = "M", + School = new School { SchoolName = "School 1" }, + Books = new List + { + new Book { Name = "Book 1" }, + new Book { Name = "Book 2" } + } + }, + new Student + { + Name = "Student 2", + SexCode = "F", + School = new School { SchoolName = "School 2" }, + Books = new List + { + new Book { Name = "Book 3" } + } + } + }; + + // Insert sample data for Student, School, and Book entities using navigation properties. + // 使用导航属性插入Student、School和Book表的示例数据。 + db.InsertNav(students) + .Include(it => it.School) + .Include(it => it.Books).ExecuteCommand(); + + // Initialize and truncate tables for A, B, and ABMapping entities. + // 初始化并清空A、B和ABMapping表。 + db.CodeFirst.InitTables(); + db.DbMaintenance.TruncateTable(); + + // Sample data for A, B, and ABMapping entities. + // A、B和ABMapping表的示例数据。 + List a1 = new List { new A() { Name = "A1" }, new A() { Name = "A2" } }; + B b1 = new B { Name = "B1" }; + B b2 = new B { Name = "B2" }; + a1[0].BList = new List { b1, b2 }; + + // Insert sample data for A, B, and ABMapping entities using navigation properties. + // 使用导航属性插入A、B和ABMapping表的示例数据。 + db.InsertNav(a1).Include(x => x.BList).ExecuteCommand(); + } + + /// + /// Student entity representing the Student table in the database. + /// 表示数据库中Student表的Student实体类。 + /// + [SugarTable("Student06")] + public class Student + { + [SugarColumn(IsPrimaryKey = true, IsIdentity = true)] + public int StudentId { get; set; } + public string Name { get; set; } + public string SexCode { get; set; } + public int SchoolId { get; set; } + + // One-to-One navigation property to School entity. + // 与School实体的一对一导航属性。 + [Navigate(NavigateType.OneToOne, nameof(SchoolId))] + public School School { get; set; } + + // One-to-Many navigation property to Book entities. + // 与Book实体的一对多导航属性。 + [Navigate(NavigateType.OneToMany, nameof(Book.StudentId))] + public List Books { get; set; } + } + + /// + /// School entity representing the School table in the database. + /// 表示数据库中School表的School实体类。 + /// + [SugarTable("School06")] + public class School + { + [SugarColumn(IsPrimaryKey = true, IsIdentity = true)] + public int SchoolId { get; set; } + public string SchoolName { get; set; } + } + + /// + /// Book entity representing the Book table in the database. + /// 表示数据库中Book表的Book实体类。 + /// + [SugarTable("Book06")] + public class Book + { + [SugarColumn(IsPrimaryKey = true, IsIdentity = true)] + public int BookId { get; set; } + public string Name { get; set; } + public int StudentId { get; set; } + } + + /// + /// A entity representing the A table in the database for many-to-many relationship. + /// 表示多对多关系中数据库中A表的A实体类。 + /// + [SugarTable("A06")] + public class A + { + [SugarColumn(IsPrimaryKey = true, IsIdentity = true)] + public int AId { get; set; } + public string Name { get; set; } + + // Many-to-Many navigation property to B entities using ABMapping table. + // 与B实体的多对多导航属性,使用ABMapping表。 + [Navigate(typeof(ABMapping), nameof(ABMapping.AId), nameof(ABMapping.BId))] + public List BList { get; set; } + } + + /// + /// B entity representing the B table in the database for many-to-many relationship. + /// 表示多对多关系中数据库中B表的B实体类。 + /// + [SugarTable("B06")] + public class B + { + [SugarColumn(IsPrimaryKey = true, IsIdentity = true)] + public int BId { get; set; } + public string Name { get; set; } + + // Many-to-Many navigation property to A entities using ABMapping table. + // 与A实体的多对多导航属性,使用ABMapping表。 + [Navigate(typeof(ABMapping), nameof(ABMapping.BId), nameof(ABMapping.AId))] + public List AList { get; set; } + } + + /// + /// ABMapping entity representing the intermediate table for many-to-many relationship between A and B entities. + /// 表示A和B实体之间多对多关系的中间表的ABMapping实体类。 + /// + [SugarTable("ABMapping06")] + public class ABMapping + { + [SugarColumn(IsPrimaryKey = true)] + public int AId { get; set; } + [SugarColumn(IsPrimaryKey = true)] + public int BId { get; set; } + } + } +} \ No newline at end of file diff --git a/Src/Asp.NetCore2/SqlSeverTest/7_GroupQuery.cs b/Src/Asp.NetCore2/SqlSeverTest/7_GroupQuery.cs new file mode 100644 index 000000000..6eabe8d54 --- /dev/null +++ b/Src/Asp.NetCore2/SqlSeverTest/7_GroupQuery.cs @@ -0,0 +1,74 @@ +using SqlSugar; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace OrmTest +{ + internal class _7_GroupQuery + { + public static void Init() + { + var db = DbHelper.GetNewDb(); + List students = new List + { + new Student { Id = 1, Name = "Alice", Age = 20 }, + new Student { Id = 2, Name = "Bob", Age = 22 }, + new Student { Id = 3, Name = "Alice", Age = 21 }, + new Student { Id = 4, Name = "Charlie", Age = 19 }, + new Student { Id = 5, Name = "Bob", Age = 20 } + }; + + // 初始化数据库表结构,如果表不存在则创建 (Initialize database table structure; create if not exists) + db.CodeFirst.InitTables(); + + // 清空指定表中的所有数据 (Truncate all data in the specified table) + db.DbMaintenance.TruncateTable(); + + //插入记录(Insert datas) + db.Insertable(students).ExecuteCommand(); + + // 分组查询示例 (Grouping Query Example) + var groupedStudents = db.Queryable() + .GroupBy(s => s.Name) + .Select(g => new + { + Name = g.Name, // 学生姓名 (Student Name) + Count = SqlFunc.AggregateCount(g.Id), // 学生数量 (Count of Students) + AverageAge = SqlFunc.AggregateAvg(g.Age), // 平均年龄 (Average Age) + MaxAge = SqlFunc.AggregateMax(g.Age), // 最大年龄 (Maximum Age) + MinAge = SqlFunc.AggregateMin(g.Age) // 最小年龄 (Minimum Age) + }) + .ToList(); + + + // 去重查询示例 (Distinct Query Example) + var distinctNames = students.Select(s => s.Name).Distinct().ToList(); + + + // 分组取第一条记录示例 (Group First Record Example) + var groupFirstRecord = db.Queryable() + .Select(g => new + { + index = SqlFunc.RowNumber(SqlFunc.Desc(g.Id), g.Name), + Id = g.Id, + Name = g.Name, + Age =g.Age + }) + .MergeTable() + .Where(it => it.index == 1) + .ToList(); + } + + [SqlSugar.SugarTable("Student07")] + public class Student + { + [SqlSugar.SugarColumn(IsPrimaryKey = true, IsIdentity = true)] + public int Id { get; set; } // 学生ID (Student ID) + public string Name { get; set; } // 学生姓名 (Student Name) + public int Age { get; set; } // 学生年龄 (Student Age) + } + } +} diff --git a/Src/Asp.NetCore2/SqlSeverTest/8_Insert.cs b/Src/Asp.NetCore2/SqlSeverTest/8_Insert.cs new file mode 100644 index 000000000..591a435f9 --- /dev/null +++ b/Src/Asp.NetCore2/SqlSeverTest/8_Insert.cs @@ -0,0 +1,66 @@ +using SqlSugar; +using System; +using System.Collections.Generic; +using System.Data.Common; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace OrmTest +{ + internal class _8_Insert + { + public static void Init() + { + var db = DbHelper.GetNewDb(); + + // 初始化实体表格(Initialize entity tables) + db.CodeFirst.InitTables(); + + // Use Case 1: 返回插入行数(Return the number of inserted rows) + var rowCount = db.Insertable(new StudentWithIdentity() { Name = "name" }).ExecuteCommand(); + + // Use Case 2: 插入数据并返回自增列(Insert data and return the auto-incremented column) + var identity = db.Insertable(new StudentWithIdentity() { Name = "name2" }).ExecuteReturnIdentity(); + + // Use Case 3: 返回雪花ID(Return the snowflake ID) + var snowflakeId = db.Insertable(new StudentWithSnowflake() { Name = "name" }).ExecuteReturnSnowflakeId(); + + // Use Case 4: 强制设置表名别名(Forcefully set table name alias) + db.Insertable(new StudentWithIdentity() { Name = "name2" }).AS("StudentWithIdentity").ExecuteCommand(); + + // Use Case 5: 批量插入实体(非参数化插入)(Batch insert entities (non-parameterized)) + var list = db.Queryable().Take(2).ToList(); + db.Insertable(list).ExecuteCommand(); + db.Insertable(list).PageSize(1000).ExecuteCommand(); + + // Use Case 6: 参数化内部分页插入(Parameterized internal pagination insert) + db.Insertable(list).UseParameter().ExecuteCommand(); + + // Use Case 7: 大数据写入(示例代码,请根据实际情况调整)(Bulk data insertion - Example code, adjust based on actual scenario) + var listLong = new List() { + new StudentWithSnowflake() { Name = "name",Id=SnowFlakeSingle.Instance.NextId() }, + new StudentWithSnowflake() { Name = "name",Id=SnowFlakeSingle.Instance.NextId()} + }; + db.Fastest().BulkCopy(listLong); + } + + // 实体类:带自增主键(Entity class: With auto-increment primary key) + [SugarTable("StudentWithIdentity08")] + public class StudentWithIdentity + { + [SugarColumn(IsPrimaryKey = true, IsIdentity = true)] + public int Id { get; set; } + public string Name { get; set; } + } + + // 实体类:带雪花主键(Entity class: With snowflake primary key) + [SugarTable("StudentWithSnowflake08")] + public class StudentWithSnowflake + { + [SugarColumn(IsPrimaryKey = true)] + public long Id { get; set; } + public string Name { get; set; } + } + } +} \ No newline at end of file diff --git a/Src/Asp.NetCore2/SqlSeverTest/9_Update.cs b/Src/Asp.NetCore2/SqlSeverTest/9_Update.cs new file mode 100644 index 000000000..2fdcc0fdf --- /dev/null +++ b/Src/Asp.NetCore2/SqlSeverTest/9_Update.cs @@ -0,0 +1,88 @@ +using SqlSugar; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using static OrmTest._8_Insert; + +namespace OrmTest +{ + internal class _9_Update + { + /// + /// 初始化更新方法(Initialize update methods) + /// + internal static void Init() + { + var db = DbHelper.GetNewDb(); + + // 初始化实体表格(Initialize entity tables) + db.CodeFirst.InitTables(); + + // 创建一个需要更新的实体对象(Create an entity object to be updated) + var updateObj = new StudentWithSnowflake() { Id = 1, Name = "order1" }; + + // 创建需要批量更新的实体对象列表(Create a list of entity objects to be updated in bulk) + var updateObjs = new List { + new StudentWithSnowflake() { Id = 11, Name = "order11", Date=DateTime.Now }, + new StudentWithSnowflake() { Id = 12, Name = "order12", Date=DateTime.Now } + }; + + /***************************根据实体更新 (Update based on entity)***************************/ + + // 更新单个实体对象(Update a single entity object) + var result = db.Updateable(updateObj).ExecuteCommand(); + + // 批量更新实体对象列表(Update a list of entity objects in bulk) + var result20 = db.Updateable(updateObjs).ExecuteCommand(); + var result21 = db.Updateable(updateObjs).PageSize(500).ExecuteCommand(); + + // 更新实体对象,忽略指定列(Update entity object, ignoring specific columns) + var result3 = db.Updateable(updateObj).IgnoreColumns(it => new { it.Remark }).ExecuteCommand(); + + // 更新实体对象的指定列(Update specific columns of the entity object) + var result4 = db.Updateable(updateObj).UpdateColumns(it => new { it.Name, Date = DateTime.Now }).ExecuteCommand(); + + // 如果没有主键,按照指定列更新实体对象(If there is no primary key, update entity object based on specified columns) + var result5 = db.Updateable(updateObj).WhereColumns(it => new { it.Id }).ExecuteCommand(); + + // 如果字段值为NULL,不进行更新(Do not update columns with NULL values) + var result6 = db.Updateable(updateObj).IgnoreNullColumns().ExecuteCommand(); + + // 忽略为NULL和默认值的列进行更新(Ignore columns with NULL and default values during update) + var result7 = db.Updateable(updateObj) + .IgnoreColumns(ignoreAllNullColumns: true, ignoreAllDefaultValue:true) + .ExecuteCommand(); + + // 使用最快的方式批量更新实体对象列表(Bulk update a list of entity objects using the fastest method) + var result8 = db.Fastest().BulkUpdate(updateObjs); + + /***************************表达式更新 (Expression Update)***************************/ + + // 使用表达式更新实体对象的指定列(Update specific columns of the entity object using expressions) + var result71 = db.Updateable() + .SetColumns(it => new StudentWithSnowflake() { Name = "a", Date = DateTime.Now }) + .Where(it => it.Id == 11) + .ExecuteCommand(); + + // 使用表达式更新实体对象的指定列(Update specific columns of the entity object using expressions) + var result81 = db.Updateable() + .SetColumns(it => it.Name == "Name" + "1") + .Where(it => it.Id == 1) + .ExecuteCommand(); + } + + // 实体类:带雪花主键(Entity class: With snowflake primary key) + [SugarTable("StudentWithSnowflake09")] + public class StudentWithSnowflake + { + [SugarColumn(IsPrimaryKey = true)] + public long Id { get; set; } + public string Name { get; set; } + public DateTime Date { get; set; } + [SugarColumn(IsNullable = true)] + public string Remark { get; set; } + } + } +} \ No newline at end of file diff --git a/Src/Asp.NetCore2/SqlSeverTest/Program.cs b/Src/Asp.NetCore2/SqlSeverTest/Program.cs index 57092458c..64e9f1e7b 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/Program.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/Program.cs @@ -1,50 +1,64 @@ - +using SqlSugar; using System; namespace OrmTest { - class Program + + public class Program + { + static void Main(string[] args) + { + _1_CodeFirst.Init(); + _2_DbFirst.Init(); + _3_EasyQuery.Init(); + _4_JoinQuery.Init(); + _5_PageQuery.Init(); + _6_NavQuery.Init(); + _7_GroupQuery.Init(); + _8_Insert.Init(); + _9_Update.Init(); + _a1_Delete.Init(); + _a2_Sql.Init(); + _a3_Merge.Init(); + } + } + + /// + /// Helper class for database operations + /// 数据库操作的辅助类 + /// + public class DbHelper { /// - /// Set up config.cs file and start directly F5 - /// 设置Config.cs文件直接F5启动例子 + /// Database connection string + /// 数据库连接字符串 /// - /// - static void Main(string[] args) + public readonly static string Connection = "server=.;uid=sa;pwd=sasa;database=SqlSugar5Demo"; + + /// + /// Get a new SqlSugarClient instance with specific configurations + /// 获取具有特定配置的新 SqlSugarClient 实例 + /// + /// SqlSugarClient instance + public static SqlSugarClient GetNewDb() { - - //Demo - Demo0_SqlSugarClient.Init(); - Demo1_Queryable.Init(); - Demo2_Updateable.Init(); - Demo3_Insertable.Init(); - Demo4_Deleteable.Init(); - DemoN_SplitTable.Init(); - DemoM_UnitOfWork.Init(); - DemoL_Snowflake.Init(); - Demo5_SqlQueryable.Init(); - Demo6_Queue.Init(); - Demo7_Ado.Init(); - Demo8_Saveable.Init(); - Demo9_EntityMain.Init(); - DemoA_DbMain.Init(); - DemoB_Aop.Init(); - DemoC_GobalFilter.Init(); - DemoD_DbFirst.Init();; - DemoE_CodeFirst.Init(); - DemoF_Utilities.Init(); - DemoG_SimpleClient.Init(); - DemoJ_Report.Init(); - //Unit test - //NewUnitTest.Init(); + var db = new SqlSugarClient(new ConnectionConfig() + { + IsAutoCloseConnection = true, + DbType = DbType.SqlServer, + ConnectionString = Connection, + LanguageType=LanguageType.Default//Set language - //Rest Data - NewUnitTest.RestData(); - - Console.WriteLine("all successfully."); - Console.ReadKey(); + }, + it => { + // Logging SQL statements and parameters before execution + // 在执行前记录 SQL 语句和参数 + it.Aop.OnLogExecuting = (sql, para) => + { + Console.WriteLine(UtilMethods.GetNativeSql(sql, para)); + }; + }); + return db; } - - } -} +} \ No newline at end of file diff --git a/Src/Asp.NetCore2/SqlSeverTest/SqlSeverTest.csproj b/Src/Asp.NetCore2/SqlSeverTest/SqlSeverTest.csproj index 3083bf4d0..0fa347920 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/SqlSeverTest.csproj +++ b/Src/Asp.NetCore2/SqlSeverTest/SqlSeverTest.csproj @@ -5,12 +5,6 @@ netcoreapp3.1 - - - - - - diff --git a/Src/Asp.NetCore2/SqlSeverTest/Config.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Config.cs similarity index 96% rename from Src/Asp.NetCore2/SqlSeverTest/Config.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Config.cs index 0ce7f19e8..0dad89257 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/Config.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Config.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace OrmTest +namespace SqlSeverTest.UserTestCases { /// /// Setting up the database name does not require you to create the database diff --git a/Src/Asp.NetCore2/SqlSeverTest/Demo/Demo0_SqlSugarClient.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo0_SqlSugarClient.cs similarity index 99% rename from Src/Asp.NetCore2/SqlSeverTest/Demo/Demo0_SqlSugarClient.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo0_SqlSugarClient.cs index 6acb96535..e4c5370c5 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/Demo/Demo0_SqlSugarClient.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo0_SqlSugarClient.cs @@ -6,6 +6,7 @@ using System.Text; using System.Threading.Tasks; using SqlSugar; using System.ComponentModel.DataAnnotations.Schema; +using SqlSeverTest.UserTestCases; namespace OrmTest { diff --git a/Src/Asp.NetCore2/SqlSeverTest/Demo/Demo1_Queryable.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo1_Queryable.cs similarity index 99% rename from Src/Asp.NetCore2/SqlSeverTest/Demo/Demo1_Queryable.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo1_Queryable.cs index 37a494349..500f7900e 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/Demo/Demo1_Queryable.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo1_Queryable.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Data; diff --git a/Src/Asp.NetCore2/SqlSeverTest/Demo/Demo2_Updateable.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo2_Updateable.cs similarity index 98% rename from Src/Asp.NetCore2/SqlSeverTest/Demo/Demo2_Updateable.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo2_Updateable.cs index 004f88700..96a5ba351 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/Demo/Demo2_Updateable.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo2_Updateable.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; diff --git a/Src/Asp.NetCore2/SqlSeverTest/Demo/Demo3_Insertable.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo3_Insertable.cs similarity index 98% rename from Src/Asp.NetCore2/SqlSeverTest/Demo/Demo3_Insertable.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo3_Insertable.cs index 58d613ef6..2ec32cf3d 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/Demo/Demo3_Insertable.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo3_Insertable.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; diff --git a/Src/Asp.NetCore2/SqlSeverTest/Demo/Demo4_Deleteable.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo4_Deleteable.cs similarity index 97% rename from Src/Asp.NetCore2/SqlSeverTest/Demo/Demo4_Deleteable.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo4_Deleteable.cs index c72759942..b33f0667d 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/Demo/Demo4_Deleteable.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo4_Deleteable.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; diff --git a/Src/Asp.NetCore2/SqlSeverTest/Demo/Demo5_SqlQueryable.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo5_SqlQueryable.cs similarity index 96% rename from Src/Asp.NetCore2/SqlSeverTest/Demo/Demo5_SqlQueryable.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo5_SqlQueryable.cs index 7569bc23c..98e316b16 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/Demo/Demo5_SqlQueryable.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo5_SqlQueryable.cs @@ -1,4 +1,5 @@ - + +using SqlSeverTest.UserTestCases; using SqlSugar; using System; using System.Collections.Generic; diff --git a/Src/Asp.NetCore2/SqlSeverTest/Demo/Demo6_Queue.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo6_Queue.cs similarity index 97% rename from Src/Asp.NetCore2/SqlSeverTest/Demo/Demo6_Queue.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo6_Queue.cs index 666fd27ee..cf5808afb 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/Demo/Demo6_Queue.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo6_Queue.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; diff --git a/Src/Asp.NetCore2/SqlSeverTest/Demo/Demo7_Ado.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo7_Ado.cs similarity index 97% rename from Src/Asp.NetCore2/SqlSeverTest/Demo/Demo7_Ado.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo7_Ado.cs index 9a7c48d12..6635302a7 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/Demo/Demo7_Ado.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo7_Ado.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; diff --git a/Src/Asp.NetCore2/SqlSeverTest/Demo/Demo8_Saveable.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo8_Saveable.cs similarity index 95% rename from Src/Asp.NetCore2/SqlSeverTest/Demo/Demo8_Saveable.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo8_Saveable.cs index 1df3df3dd..1fd4f9551 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/Demo/Demo8_Saveable.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo8_Saveable.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; diff --git a/Src/Asp.NetCore2/SqlSeverTest/Demo/Demo9_EntityMain.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo9_EntityMain.cs similarity index 96% rename from Src/Asp.NetCore2/SqlSeverTest/Demo/Demo9_EntityMain.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo9_EntityMain.cs index be795b098..5223c148a 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/Demo/Demo9_EntityMain.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Demo9_EntityMain.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; diff --git a/Src/Asp.NetCore2/SqlSeverTest/Demo/DemoA_DbMain.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoA_DbMain.cs similarity index 96% rename from Src/Asp.NetCore2/SqlSeverTest/Demo/DemoA_DbMain.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoA_DbMain.cs index 206cd6507..785658800 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/Demo/DemoA_DbMain.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoA_DbMain.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; diff --git a/Src/Asp.NetCore2/SqlSeverTest/Demo/DemoB_Aop.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoB_Aop.cs similarity index 97% rename from Src/Asp.NetCore2/SqlSeverTest/Demo/DemoB_Aop.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoB_Aop.cs index 5d5cf7d37..02eda7b5d 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/Demo/DemoB_Aop.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoB_Aop.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; diff --git a/Src/Asp.NetCore2/SqlSeverTest/Demo/DemoD_DbFirst.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoD_DbFirst.cs similarity index 98% rename from Src/Asp.NetCore2/SqlSeverTest/Demo/DemoD_DbFirst.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoD_DbFirst.cs index db57e0938..4fac210ae 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/Demo/DemoD_DbFirst.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoD_DbFirst.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; diff --git a/Src/Asp.NetCore2/SqlSeverTest/Demo/DemoE_CodeFirst.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoE_CodeFirst.cs similarity index 97% rename from Src/Asp.NetCore2/SqlSeverTest/Demo/DemoE_CodeFirst.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoE_CodeFirst.cs index ff4018180..7d5090c6a 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/Demo/DemoE_CodeFirst.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoE_CodeFirst.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using SqlSugar.DbConvert; using System; using System.Collections.Generic; diff --git a/Src/Asp.NetCore2/SqlSeverTest/Demo/DemoF_Utilities.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoF_Utilities.cs similarity index 96% rename from Src/Asp.NetCore2/SqlSeverTest/Demo/DemoF_Utilities.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoF_Utilities.cs index 7db24c350..e4eba3739 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/Demo/DemoF_Utilities.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoF_Utilities.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; diff --git a/Src/Asp.NetCore2/SqlSeverTest/Demo/DemoG_SimpleClient.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoG_SimpleClient.cs similarity index 95% rename from Src/Asp.NetCore2/SqlSeverTest/Demo/DemoG_SimpleClient.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoG_SimpleClient.cs index 21b7208e8..92e092f6c 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/Demo/DemoG_SimpleClient.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoG_SimpleClient.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; diff --git a/Src/Asp.NetCore2/SqlSeverTest/Demo/DemoH_Tenant.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoH_Tenant.cs similarity index 98% rename from Src/Asp.NetCore2/SqlSeverTest/Demo/DemoH_Tenant.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoH_Tenant.cs index 9dd7d6da2..57f2a17e7 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/Demo/DemoH_Tenant.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoH_Tenant.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; diff --git a/Src/Asp.NetCore2/SqlSeverTest/Demo/DemoJ_Report.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoJ_Report.cs similarity index 98% rename from Src/Asp.NetCore2/SqlSeverTest/Demo/DemoJ_Report.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoJ_Report.cs index f8e98922e..8eaf727d7 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/Demo/DemoJ_Report.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoJ_Report.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; diff --git a/Src/Asp.NetCore2/SqlSeverTest/Demo/DemoL_Snowflake.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoL_Snowflake.cs similarity index 95% rename from Src/Asp.NetCore2/SqlSeverTest/Demo/DemoL_Snowflake.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoL_Snowflake.cs index 7111083d9..3f7936ed3 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/Demo/DemoL_Snowflake.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoL_Snowflake.cs @@ -1,11 +1,12 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; -namespace OrmTest +namespace OrmTest { public class DemoL_Snowflake { diff --git a/Src/Asp.NetCore2/SqlSeverTest/Demo/DemoM_UnitOfWork.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoM_UnitOfWork.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/Demo/DemoM_UnitOfWork.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoM_UnitOfWork.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/Demo/DemoN_SplitTable.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoN_SplitTable.cs similarity index 98% rename from Src/Asp.NetCore2/SqlSeverTest/Demo/DemoN_SplitTable.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoN_SplitTable.cs index 9ad822c80..6c22832ce 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/Demo/DemoN_SplitTable.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/DemoN_SplitTable.cs @@ -1,11 +1,12 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; -namespace OrmTest +namespace OrmTest { public class DemoN_SplitTable { diff --git a/Src/Asp.NetCore2/SqlSeverTest/Demo/Democ_GobalFilter.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Democ_GobalFilter.cs similarity index 98% rename from Src/Asp.NetCore2/SqlSeverTest/Demo/Democ_GobalFilter.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Democ_GobalFilter.cs index 0e866cee0..42e099b8a 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/Demo/Democ_GobalFilter.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Demo/Democ_GobalFilter.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; diff --git a/Src/Asp.NetCore2/SqlSeverTest/Models/AttributeTable.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Models/AttributeTable.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/Models/AttributeTable.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Models/AttributeTable.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/Models/Custom.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Models/Custom.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/Models/Custom.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Models/Custom.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/Models/EntityMapper.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Models/EntityMapper.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/Models/EntityMapper.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Models/EntityMapper.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/Models/Mapper.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Models/Mapper.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/Models/Mapper.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Models/Mapper.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/Models/Order.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Models/Order.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/Models/Order.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Models/Order.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/Models/OrderItem.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Models/OrderItem.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/Models/OrderItem.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Models/OrderItem.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/Models/SubInsertTest.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Models/SubInsertTest.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/Models/SubInsertTest.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Models/SubInsertTest.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/Models/TestTree.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Models/TestTree.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/Models/TestTree.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Models/TestTree.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/Models/Tree.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Models/Tree.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/Models/Tree.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Models/Tree.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/Models/ViewOrder.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Models/ViewOrder.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/Models/ViewOrder.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Models/ViewOrder.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Program.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Program.cs new file mode 100644 index 000000000..47b57bcc9 --- /dev/null +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/Program.cs @@ -0,0 +1,51 @@ + +using System; +using OrmTest; + +namespace SqlSeverTest.UserTestCases +{ + public class Cases + { + /// + /// Set up config.cs file and start directly F5 + /// 设置Config.cs文件直接F5启动例子 + /// + /// + public static void Init() + { + + //Demo + Demo0_SqlSugarClient.Init(); + Demo1_Queryable.Init(); + Demo2_Updateable.Init(); + Demo3_Insertable.Init(); + Demo4_Deleteable.Init(); + DemoN_SplitTable.Init(); + DemoM_UnitOfWork.Init(); + DemoL_Snowflake.Init(); + Demo5_SqlQueryable.Init(); + Demo6_Queue.Init(); + Demo7_Ado.Init(); + Demo8_Saveable.Init(); + Demo9_EntityMain.Init(); + DemoA_DbMain.Init(); + DemoB_Aop.Init(); + DemoC_GobalFilter.Init(); + DemoD_DbFirst.Init(); ; + DemoE_CodeFirst.Init(); + DemoF_Utilities.Init(); + DemoG_SimpleClient.Init(); + DemoJ_Report.Init(); + //Unit test + //NewUnitTest.Init(); + + //Rest Data + NewUnitTest.RestData(); + + Console.WriteLine("all successfully."); + Console.ReadKey(); + } + + + } +} diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/AnimalTest.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/AnimalTest.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/AnimalTest.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/AnimalTest.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/CrossDatabase01.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/CrossDatabase01.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/CrossDatabase01.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/CrossDatabase01.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/EntityInfoTest.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/EntityInfoTest.cs similarity index 98% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/EntityInfoTest.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/EntityInfoTest.cs index a1f2e4c04..bdd4b6b4c 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/EntityInfoTest.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/EntityInfoTest.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Main.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Main.cs similarity index 98% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/Main.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Main.cs index 75ff1ff51..ce2220756 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Main.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Main.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/OneToManyInString.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/OneToManyInString.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/OneToManyInString.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/OneToManyInString.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Test01.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Test01.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/Test01.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Test01.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UAdo.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UAdo.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UAdo.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UAdo.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UBulkCopy.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UBulkCopy.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UBulkCopy.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UBulkCopy.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UCodeFirst.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UCodeFirst.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UCodeFirst.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UCodeFirst.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UCustom01.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UCustom01.cs similarity index 97% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UCustom01.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UCustom01.cs index dc40e4a92..7c3139a32 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UCustom01.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UCustom01.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UCustom012.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UCustom012.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UCustom012.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UCustom012.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UCustom014.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UCustom014.cs similarity index 99% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UCustom014.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UCustom014.cs index fad31b56a..cecd2dd49 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UCustom014.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UCustom014.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UCustom015.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UCustom015.cs similarity index 98% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UCustom015.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UCustom015.cs index 77d26e22a..4cf86ea56 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UCustom015.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UCustom015.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UCustom019.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UCustom019.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UCustom019.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UCustom019.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UCustom02.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UCustom02.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UCustom02.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UCustom02.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UCustom03.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UCustom03.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UCustom03.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UCustom03.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UEnum.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UEnum.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UEnum.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UEnum.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UFilter.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UFilter.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UFilter.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UFilter.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UInsert.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UInsert.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UInsert.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UInsert.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UJson.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UJson.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UJson.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UJson.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UJsonsdafa.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UJsonsdafa.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UJsonsdafa.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UJsonsdafa.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UNavDynamic111N.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UNavDynamic111N.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UNavDynamic111N.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UNavDynamic111N.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UOneManyMany.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UOneManyMany.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UOneManyMany.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UOneManyMany.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UOneManyMany2.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UOneManyMany2.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UOneManyMany2.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UOneManyMany2.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UOneManyMany3.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UOneManyMany3.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UOneManyMany3.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UOneManyMany3.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UOneManyMany4.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UOneManyMany4.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UOneManyMany4.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UOneManyMany4.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UOneManyMany5.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UOneManyMany5.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UOneManyMany5.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UOneManyMany5.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UOneManyMany6.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UOneManyMany6.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UOneManyMany6.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UOneManyMany6.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UOneManyMany7.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UOneManyMany7.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UOneManyMany7.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UOneManyMany7.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UQueryable.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UQueryable.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UQueryable.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UQueryable.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UQueryable2.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UQueryable2.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UQueryable2.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UQueryable2.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UQueryableAsync.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UQueryableAsync.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UQueryableAsync.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UQueryableAsync.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UQueue.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UQueue.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UQueue.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UQueue.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UThread.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UThread.cs similarity index 99% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UThread.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UThread.cs index c731672b3..313596d48 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UThread.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UThread.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Linq; diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UThread2.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UThread2.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UThread2.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UThread2.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UThread3.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UThread3.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UThread3.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UThread3.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UTran.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UTran.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UTran.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UTran.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UValidate.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UValidate.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UValidate.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UValidate.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UinitCustomConvert.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UinitCustomConvert.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UinitCustomConvert.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UinitCustomConvert.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UinitUpdateNavOneToOne.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UinitUpdateNavOneToOne.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UinitUpdateNavOneToOne.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UinitUpdateNavOneToOne.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitBool.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitBool.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitBool.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitBool.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitBulkMerge.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitBulkMerge.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitBulkMerge.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitBulkMerge.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitCreateNavClass.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitCreateNavClass.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitCreateNavClass.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitCreateNavClass.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitCustom020.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitCustom020.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitCustom020.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitCustom020.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitFilter.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitFilter.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitFilter.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitFilter.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitGridSave.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitGridSave.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitGridSave.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitGridSave.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitManyToMany.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitManyToMany.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitManyToMany.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitManyToMany.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitNavDynamic.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitNavDynamic.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitNavDynamic.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitNavDynamic.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitOneToMany.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitOneToMany.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitOneToMany.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitOneToMany.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitOneToMany2.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitOneToMany2.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitOneToMany2.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitOneToMany2.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitOneToManyUpdate21.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitOneToManyUpdate21.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitOneToManyUpdate21.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitOneToManyUpdate21.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitOneToManyafdaa.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitOneToManyafdaa.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitOneToManyafdaa.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitOneToManyafdaa.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitOneToOneDel.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitOneToOneDel.cs similarity index 96% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitOneToOneDel.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitOneToOneDel.cs index 2502b78bc..dbd72850d 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitOneToOneDel.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitOneToOneDel.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Text; diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitOneToOneNAny.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitOneToOneNAny.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitOneToOneNAny.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitOneToOneNAny.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitSplitTask.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitSplitTask.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitSplitTask.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitSplitTask.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitStringToExp.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitStringToExp.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitStringToExp.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitStringToExp.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitSubToList.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitSubToList.cs similarity index 99% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitSubToList.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitSubToList.cs index 258ea5f80..660669f63 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitSubToList.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitSubToList.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections; using System.Collections.Generic; diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitTest.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitTest.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitTest.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitTest.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitTestReturnPkList.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitTestReturnPkList.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitTestReturnPkList.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitTestReturnPkList.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitTool.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitTool.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitTool.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitTool.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitUpdateColums.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitUpdateColums.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitUpdateColums.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitUpdateColums.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitadfasdfa.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitadfasdfa.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitadfasdfa.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitadfasdfa.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitadfasfa.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitadfasfa.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitadfasfa.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitadfasfa.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/EmpDepartmentJob.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/EmpDepartmentJob.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/EmpDepartmentJob.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/EmpDepartmentJob.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/EmpInformation.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/EmpInformation.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/EmpInformation.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/EmpInformation.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/EmpLicense.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/EmpLicense.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/EmpLicense.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/EmpLicense.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/EmpLicenseLogOff.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/EmpLicenseLogOff.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/EmpLicenseLogOff.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/EmpLicenseLogOff.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/PRT_BMS_SA_WEBCON_DOC_V.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/PRT_BMS_SA_WEBCON_DOC_V.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/PRT_BMS_SA_WEBCON_DOC_V.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/PRT_BMS_SA_WEBCON_DOC_V.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/PRT_BMS_SA_WEBCON_DTL_VP.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/PRT_BMS_SA_WEBCON_DTL_VP.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/PRT_BMS_SA_WEBCON_DTL_VP.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/PRT_BMS_SA_WEBCON_DTL_VP.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/Unitasf1.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/Unitasf1.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/Unitasf1.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/Unitasf1.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_category.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/entity/app_category.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_category.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/entity/app_category.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_comment.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/entity/app_comment.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_comment.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/entity/app_comment.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_revision.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/entity/app_revision.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_revision.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/entity/app_revision.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_topic.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/entity/app_topic.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_topic.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/entity/app_topic.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entityMap/app_topic.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/entityMap/app_topic.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entityMap/app_topic.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/entityMap/app_topic.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entityMapDTO/app_topic.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/entityMapDTO/app_topic.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entityMapDTO/app_topic.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitasf1/entityMapDTO/app_topic.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitfafaf231.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitfafaf231.cs similarity index 98% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitfafaf231.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitfafaf231.cs index 437a4566a..e019fc555 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitfafaf231.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitfafaf231.cs @@ -1,4 +1,5 @@ -using SqlSugar; +using SqlSeverTest.UserTestCases; +using SqlSugar; using System; using System.Collections.Generic; using System.Net; diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitrasdfa.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitrasdfa.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitrasdfa.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Unitrasdfa.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/UpdateNavOneToOne.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UpdateNavOneToOne.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/UpdateNavOneToOne.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UpdateNavOneToOne.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Updateable.cs b/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Updateable.cs similarity index 100% rename from Src/Asp.NetCore2/SqlSeverTest/UnitTest/Updateable.cs rename to Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/Updateable.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/a1_Delete.cs b/Src/Asp.NetCore2/SqlSeverTest/a1_Delete.cs new file mode 100644 index 000000000..03b37ce43 --- /dev/null +++ b/Src/Asp.NetCore2/SqlSeverTest/a1_Delete.cs @@ -0,0 +1,186 @@ +using SqlSugar; +using System.Collections.Generic; + +namespace OrmTest +{ + internal class _a1_Delete + { + /// + /// 初始化删除操作的示例方法。 + /// Initializes example methods for delete operations. + /// + internal static void Init() + { + // 获取新的数据库连接对象 + // Get a new database connection object + var db = DbHelper.GetNewDb(); + + db.CodeFirst.InitTables(); + + // 调用各个删除操作的示例方法 + // Calling example methods for various delete operations + DeleteSingleEntity(db); + + // 批量删除实体的示例方法 + // Example method for deleting entities in batch + DeleteBatchEntities(db); + + // 批量删除并分页的示例方法 + // Example method for deleting entities in batch with paging + DeleteBatchEntitiesWithPaging(db); + + // 调用无主键实体删除的示例方法 + // Calling example method for deleting entities without primary key + DeleteEntitiesWithoutPrimaryKey(db); + + // 调用根据主键删除实体的示例方法 + // Calling example method for deleting entity by primary key + DeleteEntityByPrimaryKey(1, db); + + // 调用根据主键数组批量删除实体的示例方法 + // Calling example method for deleting entities by primary key array + DeleteEntitiesByPrimaryKeyArray(db); + + // 调用根据表达式删除实体的示例方法 + // Calling example method for deleting entities by expression + DeleteEntitiesByExpression(db); + + // 调用联表删除实体的示例方法 + // Calling example method for deleting entities with join + DeleteEntitiesWithJoin(db); + } + + /// + /// 删除单个实体的示例方法。 + /// Example method for deleting a single entity. + /// + internal static void DeleteSingleEntity(ISqlSugarClient db) + { + // 删除指定 Id 的学生实体 + // Delete the student entity with the specified Id + db.Deleteable(new Student() { Id = 1 }).ExecuteCommand(); + } + + /// + /// 批量删除实体的示例方法。 + /// Example method for deleting entities in batch. + /// + internal static void DeleteBatchEntities(ISqlSugarClient db) + { + // 创建学生实体列表 + // Create a list of student entities + List list = new List() + { + new Student() { Id = 1 } + }; + + // 批量删除学生实体 + // Delete student entities in batch + db.Deleteable(list).ExecuteCommand(); + } + + /// + /// 批量删除并分页的示例方法。 + /// Example method for deleting entities in batch with paging. + /// + internal static void DeleteBatchEntitiesWithPaging(ISqlSugarClient db) + { + // 创建订单实体列表 + // Create a list of order entities + List list = new List(); + + // 批量删除订单实体并分页 + // Delete order entities in batch with paging + db.Deleteable(list).PageSize(500).ExecuteCommand(); + } + + /// + /// 无主键实体删除的示例方法。 + /// Example method for deleting entities without primary key. + /// + internal static void DeleteEntitiesWithoutPrimaryKey( ISqlSugarClient db) + { + List orders = new List() + { + new Order() { Id = 1 }, + new Order() { Id = 2 } + }; + + // 根据指定的实体列表的 Id 列进行删除 + // Delete entities based on the Id column of the specified entity list + db.Deleteable().WhereColumns(orders, it => new { it.Id }).ExecuteCommand(); + } + + /// + /// 根据主键删除实体的示例方法。 + /// Example method for deleting an entity by primary key. + /// + internal static void DeleteEntityByPrimaryKey(int id, ISqlSugarClient db) + { + // 根据指定的 Id 删除学生实体 + // Delete the student entity with the specified Id + db.Deleteable().In(id).ExecuteCommand(); + } + + /// + /// 根据主键数组批量删除实体的示例方法。 + /// Example method for deleting entities by primary key array. + /// + internal static void DeleteEntitiesByPrimaryKeyArray(ISqlSugarClient db) + { + // 定义主键数组 + // Define an array of primary keys + int[] ids = { 1, 2 }; + + // 根据指定的 Id 数组批量删除学生实体 + // Delete student entities in batch based on the specified Id array + db.Deleteable().In(ids).ExecuteCommand(); + } + + /// + /// 根据表达式删除实体的示例方法。 + /// Example method for deleting entities by expression. + /// + internal static void DeleteEntitiesByExpression(ISqlSugarClient db) + { + // 根据指定的表达式删除学生实体 + // Delete the student entity based on the specified expression + db.Deleteable().Where(it => it.Id == 1).ExecuteCommand(); + } + + /// + /// 联表删除实体的示例方法。 + /// Example method for deleting entities with join. + /// + internal static void DeleteEntitiesWithJoin(ISqlSugarClient db) + { + // 联表删除学生实体 + // Delete student entities with join + db.Deleteable() + .Where(p => SqlFunc.Subqueryable().Where(s => s.Id == p.SchoolId).Any()) + .ExecuteCommand(); + } + + [SugarTable("Students_a1")] + public class Student + { + [SugarColumn(IsPrimaryKey = true, IsIdentity = true)] // 主键 + public int Id { get; set; } + + public string Name { get; set; } + + public int SchoolId { get; set; } + } + + [SugarTable("Orders_a2")] + public class Order + { + [SugarColumn(IsPrimaryKey = true, IsIdentity = true)] // 主键 + public int Id { get; set; } + + public string OrderNumber { get; set; } + + public decimal Amount { get; set; } + } + } +} \ No newline at end of file diff --git a/Src/Asp.NetCore2/SqlSeverTest/a2_Sql.cs b/Src/Asp.NetCore2/SqlSeverTest/a2_Sql.cs new file mode 100644 index 000000000..ec9efb782 --- /dev/null +++ b/Src/Asp.NetCore2/SqlSeverTest/a2_Sql.cs @@ -0,0 +1,74 @@ +using SqlSugar; +using System; +using System.Collections.Generic; + +namespace OrmTest +{ + internal class _a2_Sql + { + /// + /// 初始化 SQL 操作的示例方法。 + /// Initializes example methods for SQL operations. + /// + internal static void Init() + { + // 获取新的数据库连接对象 + // Get a new database connection object + var db = DbHelper.GetNewDb(); + + // CodeFirst 初始化 ClassA 表 + // CodeFirst initializes the ClassA table + db.CodeFirst.InitTables(); + db.Insertable(new ClassA() { Name = Guid.NewGuid().ToString("N") }).ExecuteCommand(); + + // 1. 无参数查询 DataTable + // 1. Query DataTable without parameters + var dt1 = db.Ado.GetDataTable("SELECT * FROM Table_a2"); + + // 2. 带参数查询 DataTable(简化用法) + // 2. Query DataTable with parameters (simplified usage) + var dt2 = db.Ado.GetDataTable("SELECT * FROM Table_a2 WHERE id=@id AND name LIKE @name", + new { id = 1, name = "%Jack%" }); + + // 3. 带参数查询 DataTable(复杂用法) + // 3. Query DataTable with parameters (complex usage) + var parameters = new List + { + new SugarParameter("@id", 1), + new SugarParameter("@name", "%Jack%",System.Data.DbType.AnsiString)//DbType + }; + var dt3 = db.Ado.GetDataTable("SELECT * FROM Table_a2 WHERE id=@id AND name LIKE @name", parameters); + + // 4. 带参数查询 DataTable(结合用法) + // 4. Query DataTable with parameters (combined usage) + var dynamicParameters = db.Ado.GetParameters(new { p = 1, p2 = "A" }); + var dt4 = db.Ado.GetDataTable("SELECT * FROM Table_a2 WHERE id=@p AND name=@p2", dynamicParameters); + + // 原生 SQL 使用实体进行查询 + // Native SQL query using an entity + List entities = db.Ado.SqlQuery("SELECT * FROM Table_a2"); + List entities2 = db.Ado.SqlQuery("SELECT * FROM Table_a2 WHERE ID>@ID",new { ID=1}); + + // 原生 SQL 使用匿名对象进行查询 + // Native SQL query using an anonymous object + List anonymousObjects = db.Ado.SqlQuery("SELECT * FROM Table_a2"); + + // 执行 SQL 命令(插入、更新、删除操作) + // Execute SQL commands (insert, update, delete operations) + db.Ado.ExecuteCommand("INSERT INTO Table_a2 (name) VALUES ( 'New Record')"); + } + + /// + /// 示例实体类。 + /// Example entity class. + /// + [SugarTable("Table_a2")] + public class ClassA + { + [SugarColumn(IsPrimaryKey = true, IsIdentity = true)] + public int Id { get; set; } + + public string Name { get; set; } + } + } +} \ No newline at end of file diff --git a/Src/Asp.NetCore2/SqlSeverTest/a3_Merge.cs b/Src/Asp.NetCore2/SqlSeverTest/a3_Merge.cs new file mode 100644 index 000000000..561dd248c --- /dev/null +++ b/Src/Asp.NetCore2/SqlSeverTest/a3_Merge.cs @@ -0,0 +1,51 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace OrmTest +{ + internal class _a3_Merge + { + // 中文备注:初始化方法(用于大数据处理) + // English Comment: Initialization method (for big data processing) + internal static void Init() + { + var db = DbHelper.GetNewDb(); + //建表 + //Create table + db.CodeFirst.InitTables(); + var list = new List() { new Order() { Name = "jack" } }; + + // 中文备注:执行插入或更新操作 + // English Comment: Perform insert or update operation + db.Storageable(list).ExecuteCommand(); + + // 中文备注:分页执行插入或更新操作,每页1000条记录 + // English Comment: Perform insert or update operation with paging, 1000 records per page + db.Storageable(list).PageSize(1000).ExecuteCommand(); + + // 中文备注:带异常处理的分页插入或更新操作,每页1000条记录 + // English Comment: Perform insert or update operation with exception handling and paging, 1000 records per page + db.Storageable(list).PageSize(1000, exrows => { }).ExecuteCommand(); + + // 中文备注:使用Fastest方式批量合并数据(用于大数据处理) + // English Comment: Merge data using Fastest method (for big data processing) + db.Fastest().BulkMerge(list); + + // 中文备注:分页使用Fastest方式批量合并数据,每页100000条记录(用于大数据处理) + // English Comment: Merge data using Fastest method with paging, 100000 records per page (for big data processing) + db.Fastest().PageSize(100000).BulkMerge(list); + } + + [SqlSugar.SugarTable("Order_a3")] + public class Order + { + [SqlSugar.SugarColumn(IsPrimaryKey =true,IsIdentity =true)] + public int Id { get; set; } + public string Name { get; set; } + // 其他属性 + } + } +} \ No newline at end of file