mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-08-23 22:11:36 +08:00
update unit test
This commit is contained in:
parent
466b4b5b31
commit
2017771513
@ -78,11 +78,11 @@ namespace OrmTest
|
|||||||
}
|
}
|
||||||
db.DbMaintenance.TruncateTable<Student_001, School_001, Room_001, Desk_001>();
|
db.DbMaintenance.TruncateTable<Student_001, School_001, Room_001, Desk_001>();
|
||||||
db.InsertNav(list.First())
|
db.InsertNav(list.First())
|
||||||
.ThenInclude(x => x.school_001)
|
.Include(x => x.school_001)
|
||||||
.ThenInclude(x => x.rooms)
|
.ThenInclude(x => x.rooms)
|
||||||
.ThenInclude(x => x.desk).ExecuteCommand();
|
.ThenInclude(x => x.desk).ExecuteCommand();
|
||||||
db.InsertNav(list.Last())
|
db.InsertNav(list.Last())
|
||||||
.ThenInclude(x => x.school_001)
|
.Include(x => x.school_001)
|
||||||
.ThenInclude(x => x.rooms)
|
.ThenInclude(x => x.rooms)
|
||||||
.ThenInclude(x => x.desk).ExecuteCommand();
|
.ThenInclude(x => x.desk).ExecuteCommand();
|
||||||
|
|
||||||
|
@ -76,7 +76,10 @@ namespace OrmTest
|
|||||||
{
|
{
|
||||||
throw new Exception("unit error");
|
throw new Exception("unit error");
|
||||||
}
|
}
|
||||||
db.DbMaintenance.TruncateTable<Student_002, School_002, Room_002, Desk_002>();
|
db.Deleteable<Student_002>().ExecuteCommand();
|
||||||
|
db.Deleteable<School_002>().ExecuteCommand();
|
||||||
|
db.Deleteable<Room_002>().ExecuteCommand();
|
||||||
|
db.Deleteable<Desk_002>().ExecuteCommand();
|
||||||
foreach (var item in list)
|
foreach (var item in list)
|
||||||
{
|
{
|
||||||
item.sid = 0;
|
item.sid = 0;
|
||||||
@ -94,11 +97,11 @@ namespace OrmTest
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
db.InsertNav(list.First())
|
db.InsertNav(list.First())
|
||||||
.ThenInclude(x => x.school_001)
|
.Include(x => x.school_001)
|
||||||
.ThenInclude(x => x.rooms)
|
.ThenInclude(x => x.rooms)
|
||||||
.ThenInclude(x => x.desk).ExecuteCommand();
|
.ThenInclude(x => x.desk).ExecuteCommand();
|
||||||
db.InsertNav(list.Last())
|
db.InsertNav(list.Last())
|
||||||
.ThenInclude(x => x.school_001)
|
.Include(x => x.school_001)
|
||||||
.ThenInclude(x => x.rooms)
|
.ThenInclude(x => x.rooms)
|
||||||
.ThenInclude(x => x.desk).ExecuteCommand();
|
.ThenInclude(x => x.desk).ExecuteCommand();
|
||||||
|
|
||||||
@ -111,10 +114,10 @@ namespace OrmTest
|
|||||||
db.DbMaintenance.TruncateTable<Student_002, School_002, Room_002, Desk_002>();
|
db.DbMaintenance.TruncateTable<Student_002, School_002, Room_002, Desk_002>();
|
||||||
|
|
||||||
db.InsertNav(list.First().school_001)
|
db.InsertNav(list.First().school_001)
|
||||||
.ThenInclude(x => x.rooms)
|
.Include(x => x.rooms)
|
||||||
.ThenInclude(x => x.desk).ExecuteCommand();
|
.ThenInclude(x => x.desk).ExecuteCommand();
|
||||||
db.InsertNav(list.Last().school_001)
|
db.InsertNav(list.Last().school_001)
|
||||||
.ThenInclude(x => x.rooms)
|
.Include(x => x.rooms)
|
||||||
.ThenInclude(x => x.desk).ExecuteCommand();
|
.ThenInclude(x => x.desk).ExecuteCommand();
|
||||||
|
|
||||||
if (db.Queryable<Desk_002>().Count() != 4 || db.Queryable<Room_002>().Count() != 4
|
if (db.Queryable<Desk_002>().Count() != 4 || db.Queryable<Room_002>().Count() != 4
|
||||||
|
@ -94,11 +94,11 @@ namespace OrmTest
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
db.InsertNav(list.First())
|
db.InsertNav(list.First())
|
||||||
.ThenInclude(x => x.school_001)
|
.Include(x => x.school_001)
|
||||||
.ThenInclude(x => x.rooms)
|
.ThenInclude(x => x.rooms)
|
||||||
.ThenInclude(x => x.desk).ExecuteCommand();
|
.ThenInclude(x => x.desk).ExecuteCommand();
|
||||||
db.InsertNav(list.Last())
|
db.InsertNav(list.Last())
|
||||||
.ThenInclude(x => x.school_001)
|
.Include(x => x.school_001)
|
||||||
.ThenInclude(x => x.rooms)
|
.ThenInclude(x => x.rooms)
|
||||||
.ThenInclude(x => x.desk).ExecuteCommand();
|
.ThenInclude(x => x.desk).ExecuteCommand();
|
||||||
|
|
||||||
@ -111,10 +111,10 @@ namespace OrmTest
|
|||||||
db.DbMaintenance.TruncateTable<Student_003, School_003, Room_003, Desk_003>();
|
db.DbMaintenance.TruncateTable<Student_003, School_003, Room_003, Desk_003>();
|
||||||
|
|
||||||
db.InsertNav(list.First().school_001)
|
db.InsertNav(list.First().school_001)
|
||||||
.ThenInclude(x => x.rooms)
|
.Include(x => x.rooms)
|
||||||
.ThenInclude(x => x.desk).ExecuteCommand();
|
.ThenInclude(x => x.desk).ExecuteCommand();
|
||||||
db.InsertNav(list.Last().school_001)
|
db.InsertNav(list.Last().school_001)
|
||||||
.ThenInclude(x => x.rooms)
|
.Include(x => x.rooms)
|
||||||
.ThenInclude(x => x.desk).ExecuteCommand();
|
.ThenInclude(x => x.desk).ExecuteCommand();
|
||||||
|
|
||||||
if (db.Queryable<Desk_003>().Count() != 4 || db.Queryable<Room_003>().Count() != 4
|
if (db.Queryable<Desk_003>().Count() != 4 || db.Queryable<Room_003>().Count() != 4
|
||||||
|
@ -14,8 +14,8 @@ namespace OrmTest
|
|||||||
{
|
{
|
||||||
|
|
||||||
var db = NewUnitTest.Db;
|
var db = NewUnitTest.Db;
|
||||||
db.CodeFirst.InitTables<Student_004, School_004, Room_004, Desk_004>();
|
db.CodeFirst.InitTables<Student_004, School_004, Room_004, Desk_004, Book_004>();
|
||||||
db.DbMaintenance.TruncateTable<Student_004, School_004, Room_004, Desk_004>();
|
db.DbMaintenance.TruncateTable<Student_004, School_004, Room_004, Desk_004, Book_004>();
|
||||||
|
|
||||||
var id1 = Guid.NewGuid();
|
var id1 = Guid.NewGuid();
|
||||||
var id2 = Guid.NewGuid();
|
var id2 = Guid.NewGuid();
|
||||||
@ -26,6 +26,8 @@ namespace OrmTest
|
|||||||
|
|
||||||
db.Insertable(new School_004() { scid = id1, schname = "北大" }).ExecuteCommand();
|
db.Insertable(new School_004() { scid = id1, schname = "北大" }).ExecuteCommand();
|
||||||
db.Insertable(new School_004() { scid = id2, schname = "青华" }).ExecuteCommand();
|
db.Insertable(new School_004() { scid = id2, schname = "青华" }).ExecuteCommand();
|
||||||
|
db.Insertable(new Book_004() { StudentId = id1, Name = "数学001" }).ExecuteCommand();
|
||||||
|
db.Insertable(new Book_004() { StudentId = id2, Name = "语文002" }).ExecuteCommand();
|
||||||
|
|
||||||
|
|
||||||
db.Insertable(new Room_004() { roomId = id1, schoolId = id1, roomName = "北大01室" }).ExecuteCommand();
|
db.Insertable(new Room_004() { roomId = id1, schoolId = id1, roomName = "北大01室" }).ExecuteCommand();
|
||||||
@ -41,6 +43,7 @@ namespace OrmTest
|
|||||||
|
|
||||||
var list = db.Queryable<Student_004>()
|
var list = db.Queryable<Student_004>()
|
||||||
.Includes(x => x.school_001, x => x.rooms, x => x.desk)
|
.Includes(x => x.school_001, x => x.rooms, x => x.desk)
|
||||||
|
.Includes(x=>x.books)
|
||||||
.Where(x => x.school_001.rooms.Any(z => z.desk.Any())).ToList();
|
.Where(x => x.school_001.rooms.Any(z => z.desk.Any())).ToList();
|
||||||
|
|
||||||
if (list.Count() != 2)
|
if (list.Count() != 2)
|
||||||
@ -81,7 +84,7 @@ namespace OrmTest
|
|||||||
{
|
{
|
||||||
throw new Exception("unit error");
|
throw new Exception("unit error");
|
||||||
}
|
}
|
||||||
db.DbMaintenance.TruncateTable<Student_004, School_004, Room_004, Desk_004>();
|
db.DbMaintenance.TruncateTable<Student_004, School_004, Room_004, Desk_004,Book_004>();
|
||||||
foreach (var item in list)
|
foreach (var item in list)
|
||||||
{
|
{
|
||||||
item.sid = Guid.Empty;
|
item.sid = Guid.Empty;
|
||||||
@ -95,17 +98,30 @@ namespace OrmTest
|
|||||||
{
|
{
|
||||||
z.deskid = Guid.Empty;
|
z.deskid = Guid.Empty;
|
||||||
z.roomId = Guid.Empty;
|
z.roomId = Guid.Empty;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
foreach (var z in item.books)
|
||||||
|
{
|
||||||
|
z.bookid = Guid.Empty;
|
||||||
|
z.StudentId = Guid.Empty;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
db.InsertNav(list.First())
|
db.InsertNav(list.First())
|
||||||
.ThenInclude(x => x.school_001)
|
|
||||||
|
.Include(x => x.school_001)
|
||||||
.ThenInclude(x => x.rooms)
|
.ThenInclude(x => x.rooms)
|
||||||
.ThenInclude(x => x.desk).ExecuteCommand();
|
.ThenInclude(x => x.desk)
|
||||||
|
|
||||||
|
.Include(x=>x.books).ExecuteCommand();
|
||||||
|
|
||||||
db.InsertNav(list.Last())
|
db.InsertNav(list.Last())
|
||||||
.ThenInclude(x => x.school_001)
|
|
||||||
|
.Include(x => x.school_001)
|
||||||
.ThenInclude(x => x.rooms)
|
.ThenInclude(x => x.rooms)
|
||||||
.ThenInclude(x => x.desk).ExecuteCommand();
|
.ThenInclude(x => x.desk)
|
||||||
|
|
||||||
|
.Include(x=>x.books).ExecuteCommand();
|
||||||
|
|
||||||
if (db.Queryable<Desk_004>().Count() != 4 || db.Queryable<Room_004>().Count() != 4
|
if (db.Queryable<Desk_004>().Count() != 4 || db.Queryable<Room_004>().Count() != 4
|
||||||
|| db.Queryable<School_004>().Count() != 2 || db.Queryable<Student_004>().Count() != 2)
|
|| db.Queryable<School_004>().Count() != 2 || db.Queryable<Student_004>().Count() != 2)
|
||||||
@ -113,13 +129,13 @@ namespace OrmTest
|
|||||||
throw new Exception("unit error");
|
throw new Exception("unit error");
|
||||||
}
|
}
|
||||||
|
|
||||||
db.DbMaintenance.TruncateTable<Student_004, School_004, Room_004, Desk_004>();
|
db.DbMaintenance.TruncateTable<Student_004, School_004, Room_004, Desk_004,Book_004>();
|
||||||
|
|
||||||
db.InsertNav(list.First().school_001)
|
db.InsertNav(list.First().school_001)
|
||||||
.ThenInclude(x => x.rooms)
|
.Include(x => x.rooms)
|
||||||
.ThenInclude(x => x.desk).ExecuteCommand();
|
.ThenInclude(x => x.desk).ExecuteCommand();
|
||||||
db.InsertNav(list.Last().school_001)
|
db.InsertNav(list.Last().school_001)
|
||||||
.ThenInclude(x => x.rooms)
|
.Include(x => x.rooms)
|
||||||
.ThenInclude(x => x.desk).ExecuteCommand();
|
.ThenInclude(x => x.desk).ExecuteCommand();
|
||||||
if (db.Queryable<Desk_004>().Count() != 4 || db.Queryable<Room_004>().Count() != 4
|
if (db.Queryable<Desk_004>().Count() != 4 || db.Queryable<Room_004>().Count() != 4
|
||||||
|| db.Queryable<School_004>().Count() != 2 || db.Queryable<Student_004>().Count() != 0)
|
|| db.Queryable<School_004>().Count() != 2 || db.Queryable<Student_004>().Count() != 0)
|
||||||
@ -137,9 +153,20 @@ namespace OrmTest
|
|||||||
public Guid SchoolId { get; set; }
|
public Guid SchoolId { get; set; }
|
||||||
[SqlSugar.Navigate(SqlSugar.NavigateType.OneToOne,nameof(SchoolId))]
|
[SqlSugar.Navigate(SqlSugar.NavigateType.OneToOne,nameof(SchoolId))]
|
||||||
public School_004 school_001 { get; set; }
|
public School_004 school_001 { get; set; }
|
||||||
|
[SqlSugar.Navigate(SqlSugar.NavigateType.OneToMany, nameof(Book_004.StudentId))]
|
||||||
|
public List<Book_004> books { get; set; }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public class Book_004
|
||||||
|
{
|
||||||
|
[SqlSugar.SugarColumn(IsPrimaryKey = true)]
|
||||||
|
public Guid bookid { get; set; }
|
||||||
|
public string Name { get; set; }
|
||||||
|
public Guid StudentId { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
public class School_004
|
public class School_004
|
||||||
{
|
{
|
||||||
[SqlSugar.SugarColumn(IsPrimaryKey = true )]
|
[SqlSugar.SugarColumn(IsPrimaryKey = true )]
|
||||||
|
129
Src/Asp.NetCore2/SqlSeverTest/UnitTest/UOneManyMany5.cs
Normal file
129
Src/Asp.NetCore2/SqlSeverTest/UnitTest/UOneManyMany5.cs
Normal file
@ -0,0 +1,129 @@
|
|||||||
|
using SqlSugar;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace OrmTest
|
||||||
|
{
|
||||||
|
public class UOneManyMany5
|
||||||
|
{
|
||||||
|
|
||||||
|
public static void init()
|
||||||
|
{
|
||||||
|
|
||||||
|
var db = NewUnitTest.Db;
|
||||||
|
db.CodeFirst.InitTables<Student_004, School_004, Room_004, Desk_004, Book_004>();
|
||||||
|
db.DbMaintenance.TruncateTable<Student_004, School_004, Room_004, Desk_004, Book_004>();
|
||||||
|
|
||||||
|
var id1 = Guid.NewGuid();
|
||||||
|
var id2 = Guid.NewGuid();
|
||||||
|
var id3 = Guid.NewGuid();
|
||||||
|
var id4 = Guid.NewGuid();
|
||||||
|
db.Insertable(new Student_004() { sid=Guid.NewGuid(), StudentId = id1, Name = "北大jack", SchoolId = id1 }).ExecuteCommand();
|
||||||
|
db.Insertable(new Student_004() { sid=Guid.NewGuid(), StudentId = id2, Name = "青华jack", SchoolId = id2 }).ExecuteCommand();
|
||||||
|
|
||||||
|
db.Insertable(new School_004() { scid=Guid.NewGuid(), scid2 = id1, schname = "北大" }).ExecuteCommand();
|
||||||
|
db.Insertable(new School_004() { scid = Guid.NewGuid(),scid2 = id2, schname = "青华" }).ExecuteCommand();
|
||||||
|
db.Insertable(new Book_004() { StudentId = id1, Name = "数学001" }).ExecuteCommand();
|
||||||
|
db.Insertable(new Book_004() { StudentId = id2, Name = "语文002" }).ExecuteCommand();
|
||||||
|
|
||||||
|
|
||||||
|
db.Insertable(new Room_004() { roomId = id1, schoolId = id1, roomName = "北大01室" }).ExecuteCommand();
|
||||||
|
db.Insertable(new Room_004() { roomId = id2, schoolId = id1, roomName = "北大02室" }).ExecuteCommand();
|
||||||
|
db.Insertable(new Room_004() { roomId = id3, schoolId = id2, roomName = "青华03室" }).ExecuteCommand();
|
||||||
|
db.Insertable(new Room_004() { roomId = id4, schoolId = id2, roomName = "青华04室" }).ExecuteCommand();
|
||||||
|
|
||||||
|
db.Insertable(new Desk_004() { roomId = id1, deskid = id1, deskName = "北大01室_01" }).ExecuteCommand();
|
||||||
|
db.Insertable(new Desk_004() { roomId = id2, deskid = id2, deskName = "北大02室_01" }).ExecuteCommand();
|
||||||
|
db.Insertable(new Desk_004() { roomId = id3, deskid = id3, deskName = "青华03室_01" }).ExecuteCommand();
|
||||||
|
db.Insertable(new Desk_004() { roomId = id4, deskid = id4, deskName = "青华04室_01" }).ExecuteCommand();
|
||||||
|
|
||||||
|
|
||||||
|
var list = db.Queryable<Student_004>()
|
||||||
|
.Includes(x => x.school_001 )
|
||||||
|
.Includes(x=>x.books)
|
||||||
|
.ToList();
|
||||||
|
|
||||||
|
|
||||||
|
db.DbMaintenance.TruncateTable<Student_004, School_004, Room_004, Desk_004,Book_004>();
|
||||||
|
foreach (var item in list)
|
||||||
|
{
|
||||||
|
item.sid = Guid.Empty;
|
||||||
|
item.SchoolId = Guid.Empty;
|
||||||
|
item.school_001.scid = Guid.Empty;
|
||||||
|
foreach (var z in item.books)
|
||||||
|
{
|
||||||
|
z.bookid = Guid.Empty;
|
||||||
|
z.StudentId = Guid.Empty;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
db.InsertNav(list.First())
|
||||||
|
.Include(x=>x.books)
|
||||||
|
.Include(x=>x.school_001)
|
||||||
|
.ExecuteCommand();
|
||||||
|
|
||||||
|
db.InsertNav(list.Last())
|
||||||
|
.Include(x=>x.books)
|
||||||
|
.Include(x=>x.school_001)
|
||||||
|
.ExecuteCommand();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
[SugarTable("Student_005")]
|
||||||
|
public class Student_004
|
||||||
|
{
|
||||||
|
[SqlSugar.SugarColumn(IsPrimaryKey =true)]
|
||||||
|
public Guid sid { get; set; }
|
||||||
|
public Guid StudentId { get; set; }
|
||||||
|
public string Name { get; set; }
|
||||||
|
|
||||||
|
public Guid SchoolId { get; set; }
|
||||||
|
[SqlSugar.Navigate(SqlSugar.NavigateType.OneToOne,nameof(SchoolId),nameof(School_004.scid2))]
|
||||||
|
public School_004 school_001 { get; set; }
|
||||||
|
[SqlSugar.Navigate(SqlSugar.NavigateType.OneToMany, nameof(Book_004.StudentId),nameof(StudentId))]
|
||||||
|
public List<Book_004> books { get; set; }
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
[SugarTable("Book_005")]
|
||||||
|
public class Book_004
|
||||||
|
{
|
||||||
|
[SqlSugar.SugarColumn(IsPrimaryKey = true)]
|
||||||
|
public Guid bookid { get; set; }
|
||||||
|
public string Name { get; set; }
|
||||||
|
public Guid StudentId { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
[SugarTable("School_005")]
|
||||||
|
public class School_004
|
||||||
|
{
|
||||||
|
[SqlSugar.SugarColumn(IsPrimaryKey = true )]
|
||||||
|
public Guid scid { get; set; }
|
||||||
|
public Guid scid2 { get; set; }
|
||||||
|
public string schname { get; set; }
|
||||||
|
[SqlSugar.Navigate(SqlSugar.NavigateType.OneToMany, nameof(Room_004.schoolId))]
|
||||||
|
public List<Room_004> rooms { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
[SugarTable("Room_005")]
|
||||||
|
public class Room_004
|
||||||
|
{
|
||||||
|
[SqlSugar.SugarColumn(IsPrimaryKey = true )]
|
||||||
|
public Guid roomId { get; set; }
|
||||||
|
public Guid schoolId { get; set; }
|
||||||
|
public string roomName { get; set; }
|
||||||
|
[SqlSugar.Navigate(SqlSugar.NavigateType.OneToMany, nameof(Desk_004.roomId))]
|
||||||
|
public List<Desk_004> desk { get; set; }
|
||||||
|
}
|
||||||
|
[SugarTable("Desk_005")]
|
||||||
|
public class Desk_004
|
||||||
|
{
|
||||||
|
[SqlSugar.SugarColumn(IsPrimaryKey = true)]
|
||||||
|
public Guid deskid { get; set; }
|
||||||
|
public string deskName { get; set; }
|
||||||
|
public Guid roomId { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
222
Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitManyToMany.cs
Normal file
222
Src/Asp.NetCore2/SqlSeverTest/UnitTest/UnitManyToMany.cs
Normal file
@ -0,0 +1,222 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using SqlSugar;
|
||||||
|
namespace OrmTest
|
||||||
|
{
|
||||||
|
internal class UnitManyToMany
|
||||||
|
{
|
||||||
|
public static void Init()
|
||||||
|
{
|
||||||
|
var db = NewUnitTest.Db;
|
||||||
|
db.CodeFirst.InitTables<OperatorInfo, Role, OptRole>();
|
||||||
|
db.DbMaintenance.TruncateTable<OperatorInfo, Role, OptRole>();
|
||||||
|
db.Insertable(new OperatorInfo()
|
||||||
|
{
|
||||||
|
id="1",
|
||||||
|
createTime=DateTime.Now,
|
||||||
|
isDel=1,
|
||||||
|
isDisabled=1,
|
||||||
|
openid="",
|
||||||
|
phone="",
|
||||||
|
pwd="",
|
||||||
|
realname="a01",
|
||||||
|
remark="a",
|
||||||
|
sno="a",
|
||||||
|
username="a01"
|
||||||
|
}).ExecuteCommand();
|
||||||
|
db.Insertable(new OperatorInfo()
|
||||||
|
{
|
||||||
|
id = "2",
|
||||||
|
createTime = DateTime.Now,
|
||||||
|
isDel = 1,
|
||||||
|
isDisabled = 1,
|
||||||
|
openid = "",
|
||||||
|
phone = "",
|
||||||
|
pwd = "",
|
||||||
|
realname = "a01",
|
||||||
|
remark = "a",
|
||||||
|
sno = "a",
|
||||||
|
username = "admin"
|
||||||
|
}).ExecuteCommand();
|
||||||
|
db.Insertable(new OperatorInfo()
|
||||||
|
{
|
||||||
|
id = "3",
|
||||||
|
createTime = DateTime.Now,
|
||||||
|
isDel = 1,
|
||||||
|
isDisabled = 1,
|
||||||
|
openid = "",
|
||||||
|
phone = "",
|
||||||
|
pwd = "",
|
||||||
|
realname = "a01",
|
||||||
|
remark = "a",
|
||||||
|
sno = "a",
|
||||||
|
username = "admin"
|
||||||
|
}).ExecuteCommand();
|
||||||
|
var id=db.Insertable(new Role()
|
||||||
|
{
|
||||||
|
id=1,
|
||||||
|
createTime=DateTime.Now,
|
||||||
|
name="admin"
|
||||||
|
|
||||||
|
}).ExecuteReturnIdentity();
|
||||||
|
var id2 = db.Insertable(new Role()
|
||||||
|
{
|
||||||
|
id = 2,
|
||||||
|
createTime = DateTime.Now,
|
||||||
|
name = "admin"
|
||||||
|
|
||||||
|
}).ExecuteReturnIdentity();
|
||||||
|
db.Insertable(new OptRole() { operId="1", roleId=id }).ExecuteCommand();
|
||||||
|
db.Insertable(new OptRole() { id=2, operId = "2", roleId = id2 }).ExecuteCommand();
|
||||||
|
db.Queryable<OperatorInfo>()
|
||||||
|
.Includes(x => x.Roles).Where(x => x.Roles.Any(z=>z.id==1))
|
||||||
|
.ToList();
|
||||||
|
var list = db.Queryable<OperatorInfo>()
|
||||||
|
.Includes(x => x.Roles).Where(x=>x.Roles.Any()).ToList();
|
||||||
|
if (list.Count != 2)
|
||||||
|
{
|
||||||
|
throw new Exception("unit error");
|
||||||
|
}
|
||||||
|
var list3 = db.Queryable<OperatorInfo>()
|
||||||
|
.Includes(x => x.Roles).Where(x => x.Roles.Count()==0).ToList();
|
||||||
|
if (list3.Count != 1)
|
||||||
|
{
|
||||||
|
throw new Exception("unit error");
|
||||||
|
}
|
||||||
|
var list2=db.Queryable<OperatorInfo>()
|
||||||
|
.Includes(x => x.Roles.MappingField(z=>z.name,()=>x.username).ToList())
|
||||||
|
.ToList();
|
||||||
|
|
||||||
|
var list4 = db.Queryable<OperatorInfo>()
|
||||||
|
.Includes(x => x.Roles.Skip(10).Take(1).ToList())
|
||||||
|
.ToList();
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 描述:
|
||||||
|
/// 作者:synjones
|
||||||
|
/// 时间:2022-04-20 21:30:28
|
||||||
|
/// </summary>
|
||||||
|
[SugarTable("unit_operatorinfo")]
|
||||||
|
public partial class OperatorInfo
|
||||||
|
{ /// <summary>
|
||||||
|
/// 多角色
|
||||||
|
/// </summary>
|
||||||
|
[Navigate(typeof(OptRole), nameof(OptRole.operId), nameof(OptRole.roleId))]//名字换
|
||||||
|
public List<Role> Roles { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 主键
|
||||||
|
/// </summary>
|
||||||
|
[SugarColumn(IsPrimaryKey = true)]
|
||||||
|
public string id { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 姓名
|
||||||
|
/// </summary>
|
||||||
|
public string realname { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 账号
|
||||||
|
/// </summary>
|
||||||
|
public string username { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 密码
|
||||||
|
/// </summary>
|
||||||
|
public string pwd { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 学号
|
||||||
|
/// </summary>
|
||||||
|
public string sno { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// openid
|
||||||
|
/// </summary>
|
||||||
|
public string openid { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 手机号码
|
||||||
|
/// </summary>
|
||||||
|
public string phone { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 备注信息
|
||||||
|
/// </summary>
|
||||||
|
public string remark { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 创建日期
|
||||||
|
/// </summary>
|
||||||
|
public DateTime createTime { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 状态(1:启用,2:禁用)
|
||||||
|
/// </summary>
|
||||||
|
public int isDisabled { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 是否删除(1:正常;2:删除)
|
||||||
|
/// </summary>
|
||||||
|
public int isDel { get; set; }
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 描述:
|
||||||
|
/// 作者:synjones
|
||||||
|
/// 时间:2022-04-20 21:30:28
|
||||||
|
/// </summary>
|
||||||
|
[SugarTable("unit_role1")]
|
||||||
|
public partial class Role
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 角色
|
||||||
|
/// </summary>
|
||||||
|
[SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
|
||||||
|
public int id { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 角色名称
|
||||||
|
/// </summary>
|
||||||
|
public string name { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 创建时间
|
||||||
|
/// </summary>
|
||||||
|
public DateTime createTime { get; set; }
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 描述:
|
||||||
|
/// 作者:synjones
|
||||||
|
/// 时间:2022-04-21 14:35:09
|
||||||
|
/// </summary>
|
||||||
|
[SugarTable("unit_operator_role")]
|
||||||
|
public partial class OptRole
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
|
[SugarColumn(IsPrimaryKey = true)]
|
||||||
|
public int id { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
|
public string operId { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
|
public int roleId { get; set; }
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user