diff --git a/Src/Asp.NetCore2/MongoDbTest/UnitTest/Cases.cs b/Src/Asp.NetCore2/MongoDbTest/UnitTest/Cases.cs index 4e6b90081..9776b11d0 100644 --- a/Src/Asp.NetCore2/MongoDbTest/UnitTest/Cases.cs +++ b/Src/Asp.NetCore2/MongoDbTest/UnitTest/Cases.cs @@ -25,7 +25,11 @@ namespace MongoDbTest Delete.Init(); InsertOrUpdate.Init(); Unitdafasdys.Init(); + + //主键不是ObjectId类型用例 + //The primary key is not an ObjectId type use case LongPrimaryKey.Init(); + GuidPrimaryKey.Init(); } public static void ThrowUnitError() { diff --git a/Src/Asp.NetCore2/MongoDbTest/UnitTest/GuidPrimaryKey.cs b/Src/Asp.NetCore2/MongoDbTest/UnitTest/GuidPrimaryKey.cs new file mode 100644 index 000000000..7b33a387b --- /dev/null +++ b/Src/Asp.NetCore2/MongoDbTest/UnitTest/GuidPrimaryKey.cs @@ -0,0 +1,56 @@ +using SqlSugar.MongoDb; +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace MongoDbTest +{ + internal class GuidPrimaryKey + { + public static void Init() + { + var db = DbHelper.GetNewDb(); + db.DbMaintenance.TruncateTable(); + var id = Guid.NewGuid(); + db.Insertable(new Student() + { + Name="a", + Id=id + + }).ExecuteCommand(); + + var data=db.Queryable().Where(it => it.Id == id).ToList(); + if (data.First().Id != id) Cases.ThrowUnitError(); + data.First().Name = "a2"; + db.Updateable(data).ExecuteCommand(); + var data2 = db.Queryable().Where(it => it.Id == id).ToList(); + if (data.First().Name !="a2") Cases.ThrowUnitError(); + Console.WriteLine(db.Queryable().Count()); + db.Deleteable().Where(it=>it.Id==id).ExecuteCommand(); + if(db.Queryable().Count()!=0) Cases.ThrowUnitError(); + db.Insertable(new Student() + { + Name = "a" , + Id=id + }).ExecuteCommand(); + var rows=db.Deleteable().Where(it => new Guid[] { id}.Contains(it.Id)).ExecuteCommand(); + if (db.Queryable().Count() != 0) Cases.ThrowUnitError(); + db.Insertable(new Student() + { + Name = "a", + Id=id + }).ExecuteCommand(); + var row2=db.Deleteable(new Student() { Id=id}).ExecuteCommand(); + if (db.Queryable().Count() != 0) Cases.ThrowUnitError(); + } + + [SqlSugar.SugarTable("UnitStutsdsdfr5fazzz1")] + public class Student: MongoDbBaseGuid + { + public string Name { get; set; } + } + } +}