From 70be7db6c4fcaf2b09e387a343f2a5b2fe6856e3 Mon Sep 17 00:00:00 2001 From: sunkaixuan <610262374@qq.com> Date: Sun, 28 May 2023 19:30:40 +0800 Subject: [PATCH] Add unit test --- .../SqlSeverTest/UnitTest/Main.cs | 1 + .../UnitTest/Unitasf1/Unitasf1.cs | 65 +++++++++++++++++++ .../UnitTest/Unitasf1/entity/app_category.cs | 50 ++++++++++++++ .../UnitTest/Unitasf1/entity/app_comment.cs | 51 +++++++++++++++ .../UnitTest/Unitasf1/entity/app_revision.cs | 44 +++++++++++++ .../UnitTest/Unitasf1/entity/app_topic.cs | 51 +++++++++++++++ .../UnitTest/Unitasf1/entityMap/app_topic.cs | 31 +++++++++ .../Unitasf1/entityMapDTO/app_topic.cs | 31 +++++++++ 8 files changed, 324 insertions(+) create mode 100644 Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/Unitasf1.cs create mode 100644 Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_category.cs create mode 100644 Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_comment.cs create mode 100644 Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_revision.cs create mode 100644 Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_topic.cs create mode 100644 Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entityMap/app_topic.cs create mode 100644 Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entityMapDTO/app_topic.cs diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Main.cs b/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Main.cs index 3f16808d0..fbdb95917 100644 --- a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Main.cs +++ b/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Main.cs @@ -31,6 +31,7 @@ namespace OrmTest } public static void Init() { + Unitasf1.Init(); UOneManyMany7.init(); UOneManyMany6.init(); UinitCustomConvert.Init(); diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/Unitasf1.cs b/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/Unitasf1.cs new file mode 100644 index 000000000..2cf578ddb --- /dev/null +++ b/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/Unitasf1.cs @@ -0,0 +1,65 @@ +using SqlSugar; +using System; +using System.Linq; + +namespace OrmTest +{ + internal class Unitasf1 + { + public static void Init() + { + Console.WriteLine("Hello, World!"); + + + var db = new SqlSugarScope(new SqlSugar.ConnectionConfig() + { + ConnectionString = "server=.;uid=sa;pwd=sasa;database=sqlsugartestxxxx", + DbType = DbType.SqlServer, + IsAutoCloseConnection = true + }, db => + { + + //如果是多库看标题6 + + //每次Sql执行前事件 + db.Aop.OnLogExecuting = (sql, pars) => + { + //我可以在这里面写逻辑 + + //技巧:AOP中获取IOC对象 + //var serviceBuilder = services.BuildServiceProvider(); + //var log= serviceBuilder.GetService>(); + + + //获取原生SQL推荐 5.1.4.63 性能OK + Console.WriteLine(UtilMethods.GetNativeSql(sql, pars)); + }; + + }); + db.DbMaintenance.CreateDatabase(); + //建表 + if (!db.DbMaintenance.IsAnyTable("app_category", false)) { db.CodeFirst.InitTables(); } + if (!db.DbMaintenance.IsAnyTable("app_comment", false)) { db.CodeFirst.InitTables(); } + if (!db.DbMaintenance.IsAnyTable("app_revision", false)) { db.CodeFirst.InitTables(); } + if (!db.DbMaintenance.IsAnyTable("app_topic", false)) { db.CodeFirst.InitTables(); } + + + //用例代码 + //var result = db.Insertable(new Test001() { id = 1 }).ExecuteCommand();//用例代码 + + var _query = db.Queryable (); + //_query.Includes(k => k.map_app_category); + //_query.Includes(k => k.map_app_revision); + //_query.Includes(k => k.map_app_comment); + var _queryPagerSelect = _query.Select(k => new entityMapDTO.app_topic() + { + fk_category_name = k.map_app_category.category_name, + fk_comment_total = k.map_app_comment.Count(), + IsAny = k.map_app_revision.Any(), + },true) + .ToList() ; + //Console.WriteLine("用例跑完"); + //Console.ReadKey(); + } + } +} \ No newline at end of file diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_category.cs b/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_category.cs new file mode 100644 index 000000000..44c1f3773 --- /dev/null +++ b/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_category.cs @@ -0,0 +1,50 @@ +using System; +using System.Linq; +using System.Text; +using SqlSugar; + +namespace OrmTest.entity +{ + /// + /// 分类 + /// + //[Tenant(nameof(enumTenant.app))] + [SugarTable("app_category")] + public partial class app_category + { + public app_category(){ + + + } + /// + /// Desc:分类编号 + /// Default: + /// Nullable:False + /// + [SugarColumn(IsPrimaryKey=true,IsIdentity=true)] + public long category_id {get;set;} + + /// + /// Desc:上级分类编号 + /// Default: + /// Nullable:True + /// + public long? category_pid {get;set;} + + /// + /// Desc:分类名称 + /// Default: + /// Nullable:True + /// + public string category_name {get;set;} + + /// + /// Desc:版本号 + /// Default: + /// Nullable:True + /// + [SqlSugar.SugarColumn(IsEnableUpdateVersionValidation = true)]//标识版本字段 + public Guid? ver {get;set;} + + } +} diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_comment.cs b/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_comment.cs new file mode 100644 index 000000000..a2d2bd112 --- /dev/null +++ b/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_comment.cs @@ -0,0 +1,51 @@ +using System; +using System.Linq; +using System.Text; +using SqlSugar; + +namespace OrmTest.entity +{ + /// + ///评论 + /// + //[Tenant(nameof(enumTenant.app))] + [SugarTable("app_comment")] + public partial class app_comment + { + public app_comment(){ + + this.topic_id =Convert.ToInt64("0"); + + } + /// + /// Desc:评论编号 + /// Default: + /// Nullable:False + /// + [SugarColumn(IsPrimaryKey=true,IsIdentity=true)] + public long comment_id {get;set;} + + /// + /// Desc:主题编号 + /// Default:0 + /// Nullable:True + /// + public long? topic_id {get;set;} + + /// + /// Desc:评论内容 + /// Default: + /// Nullable:True + /// + public string content {get;set;} + + /// + /// Desc:版本号 + /// Default: + /// Nullable:True + /// + [SqlSugar.SugarColumn(IsEnableUpdateVersionValidation = true)]//标识版本字段 + public Guid? ver {get;set;} + + } +} diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_revision.cs b/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_revision.cs new file mode 100644 index 000000000..2ec1bc115 --- /dev/null +++ b/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_revision.cs @@ -0,0 +1,44 @@ +using System; +using System.Linq; +using System.Text; +using SqlSugar; + +namespace OrmTest.entity +{ + /// + ///修订记录 + /// + //[Tenant(nameof(enumTenant.app))] + [SugarTable("app_revision")] + public partial class app_revision + { + public app_revision(){ + + this.topic_id =Convert.ToInt64("0"); + + } + /// + /// Desc:修订编号 + /// Default: + /// Nullable:False + /// + [SugarColumn(IsPrimaryKey=true,IsIdentity=true)] + public long revision_id {get;set;} + + /// + /// Desc:主题编号 + /// Default:0 + /// Nullable:True + /// + public long? topic_id {get;set;} + + /// + /// Desc:版本号 + /// Default: + /// Nullable:True + /// + [SqlSugar.SugarColumn(IsEnableUpdateVersionValidation = true)]//标识版本字段 + public Guid? ver {get;set;} + + } +} diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_topic.cs b/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_topic.cs new file mode 100644 index 000000000..8a9f3f8ee --- /dev/null +++ b/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entity/app_topic.cs @@ -0,0 +1,51 @@ +using System; +using System.Linq; +using System.Text; +using SqlSugar; + +namespace OrmTest.entity +{ + /// + ///主题 + /// + //[Tenant(nameof(enumTenant.app))] + [SugarTable("app_topic")] + public partial class app_topic + { + public app_topic(){ + + this.category_id =Convert.ToInt64("0"); + + } + /// + /// Desc:编号 + /// Default: + /// Nullable:False + /// + [SugarColumn(IsPrimaryKey=true,IsIdentity=true)] + public long topic_id {get;set;} + + /// + /// Desc:分类编号 + /// Default:0 + /// Nullable:True + /// + public long? category_id {get;set;} + + /// + /// Desc:主题 + /// Default: + /// Nullable:True + /// + public string title {get;set;} + + /// + /// Desc:版本号 + /// Default: + /// Nullable:True + /// + [SqlSugar.SugarColumn(IsEnableUpdateVersionValidation = true)]//标识版本字段 + public Guid? ver {get;set;} + + } +} diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entityMap/app_topic.cs b/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entityMap/app_topic.cs new file mode 100644 index 000000000..921299d77 --- /dev/null +++ b/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entityMap/app_topic.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Security.Cryptography; +using System.Text; +using System.Threading.Tasks; +using SqlSugar; + +namespace OrmTest.entityMap +{ + public class app_topic : entity.app_topic + { + /// + /// 导航表:分类 + /// + [Navigate(NavigateType.OneToOne, nameof(category_id))] + public entity.app_category map_app_category { get; set; } + + /// + /// 导航表:评论 + /// + [Navigate(NavigateType.OneToMany, nameof(entity.app_topic.topic_id), nameof(entity.app_comment.topic_id))] + public List map_app_comment { get; set; } + + /// + /// 导航表:版本 + /// + [Navigate(NavigateType.OneToMany, nameof(entity.app_topic.topic_id), nameof(entity.app_revision.topic_id))] + public List map_app_revision { get; set; } + } +} diff --git a/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entityMapDTO/app_topic.cs b/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entityMapDTO/app_topic.cs new file mode 100644 index 000000000..e35d381d3 --- /dev/null +++ b/Src/Asp.NetCore2/SqlSeverTest/UnitTest/Unitasf1/entityMapDTO/app_topic.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Security.Cryptography; +using System.Text; +using System.Threading.Tasks; + +namespace OrmTest.entityMapDTO +{ + public class app_topic : entity.app_topic + { + /// + /// 分类名称 + /// 映射至: + /// + public string fk_category_name { get; set; } + + /// + /// 评论数量 + /// 映射至: + /// + public Int64 fk_comment_total { get; set; } = 0; + + /// + /// 版本数量 + /// 映射至: + /// + public Int64 fk_revision_total { get; set; } = 0; + public bool IsAny { get; set; } + } +}