Include 贪婪加载第一版,已通过集合的导航数据加载,包括 OneToMany/ManyToMany

This commit is contained in:
28810
2019-05-11 06:17:09 +08:00
parent 04547c06f8
commit 4481064f4e
9 changed files with 425 additions and 29 deletions

View File

@ -602,15 +602,28 @@ namespace FreeSql.Extensions.EntityUtil {
});
if (_table.Properties.ContainsKey(pn)) {
var prop = _table.Properties[pn];
exps.Add(
Expression.Assign(
Expression.MakeMemberAccess(var1Parm, prop),
Expression.Convert(
FreeSql.Internal.Utils.GetDataReaderValueBlockExpression(prop.PropertyType, parm3),
prop.PropertyType
if (_table.ColumnsByCs.ContainsKey(pn)) {
exps.Add(
Expression.Assign(
Expression.MakeMemberAccess(var1Parm, prop),
Expression.Convert(
FreeSql.Internal.Utils.GetDataReaderValueBlockExpression(prop.PropertyType, parm3),
prop.PropertyType
)
)
)
);
);
} else {
exps.Add(
Expression.Assign(
Expression.MakeMemberAccess(var1Parm, prop),
Expression.Convert(
parm3,
prop.PropertyType
)
)
);
}
}
return Expression.Lambda<Action<object, string, object>>(Expression.Block(new[] { var1Parm }, exps), new[] { parm1, parm2, parm3 }).Compile();
});