mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-09-18 17:48:11 +08:00
ModelContext support inheritance
This commit is contained in:
@@ -12,6 +12,7 @@ namespace OrmTest.Demo
|
||||
public static void Init()
|
||||
{
|
||||
var db = GetInstance();
|
||||
db.Insertable(new CMStudent() { SchoolId = 1, Name = "xx1" }).ExecuteCommand();
|
||||
var students = db.Queryable<CMStudent>().ToList();
|
||||
if (students != null)
|
||||
{
|
||||
|
@@ -1180,7 +1180,7 @@ namespace SqlSugar
|
||||
{
|
||||
if (result.HasValue())
|
||||
{
|
||||
if (entityType.GetTypeInfo().BaseType.HasValue() && entityType.GetTypeInfo().BaseType == UtilConstants.ModelType)
|
||||
if (UtilMethods.GetRootBaseType(entityType).HasValue() &&UtilMethods.GetRootBaseType(entityType) == UtilConstants.ModelType)
|
||||
{
|
||||
foreach (var item in result)
|
||||
{
|
||||
|
@@ -17,6 +17,17 @@ namespace SqlSugar
|
||||
return type==null ? oldType : type;
|
||||
}
|
||||
|
||||
internal static Type GetRootBaseType(Type entityType)
|
||||
{
|
||||
var baseType = entityType.BaseType;
|
||||
while (baseType != null && baseType.BaseType != UtilConstants.ObjType)
|
||||
{
|
||||
baseType = baseType.BaseType;
|
||||
}
|
||||
return baseType;
|
||||
}
|
||||
|
||||
|
||||
internal static Type GetUnderType(PropertyInfo propertyInfo, ref bool isNullable)
|
||||
{
|
||||
Type unType = Nullable.GetUnderlyingType(propertyInfo.PropertyType);
|
||||
|
Reference in New Issue
Block a user