mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-07-15 23:13:42 +08:00
Synchronization code
This commit is contained in:
parent
f6dd5de7f5
commit
d1ece300ac
@ -24,26 +24,29 @@ namespace SqlSugar
|
||||
);
|
||||
return conditionalExpression;
|
||||
}
|
||||
internal static bool IsOwsOne(ExpressionContext context, Expression member)
|
||||
internal static bool IsOwnsOne(ExpressionContext context, Expression member)
|
||||
{
|
||||
var isOwsOne = false;
|
||||
var isOwnsOne = false;
|
||||
if (context?.SugarContext?.Context == null)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
if (member is MemberExpression memberExp)
|
||||
{
|
||||
var name = memberExp?.Member?.Name;
|
||||
if (memberExp.Expression is MemberExpression parentMemberExp)
|
||||
if (memberExp?.Expression is MemberExpression parentMemberExp)
|
||||
{
|
||||
if (name != null && parentMemberExp.Expression is ParameterExpression)
|
||||
if (name != null && parentMemberExp?.Expression is ParameterExpression rootExp)
|
||||
{
|
||||
var rootExp = (parentMemberExp.Expression as ParameterExpression);
|
||||
var entityInfo = context?.SugarContext?.Context?.EntityMaintenance?.GetEntityInfo(rootExp.Type);
|
||||
var navColumn = entityInfo.Columns.FirstOrDefault(it => it.PropertyName == name);
|
||||
isOwsOne = navColumn?.ForOwnsOnePropertyInfo != null;
|
||||
var navColumn = entityInfo?.Columns?.FirstOrDefault(it => it.PropertyName == name);
|
||||
isOwnsOne = navColumn?.ForOwnsOnePropertyInfo != null;
|
||||
}
|
||||
}
|
||||
}
|
||||
return isOwsOne;
|
||||
return isOwnsOne;
|
||||
}
|
||||
internal static EntityColumnInfo GetOwsOneColumnInfo(ExpressionContext context, Expression member)
|
||||
internal static EntityColumnInfo GetOwnsOneColumnInfo(ExpressionContext context, Expression member)
|
||||
{
|
||||
EntityColumnInfo entityColumnInfo = new EntityColumnInfo();
|
||||
if (member is MemberExpression memberExp)
|
||||
|
@ -457,9 +457,9 @@ namespace SqlSugar
|
||||
|
||||
private void ResolveMemberValue(ExpressionParameter parameter, ExpressionParameter baseParameter, bool? isLeft, bool isSetTempData, MemberExpression expression)
|
||||
{
|
||||
if (ExpressionTool.IsOwsOne(this.Context, expression))
|
||||
if (ExpressionTool.IsOwnsOne(this.Context, expression))
|
||||
{
|
||||
var column = ExpressionTool.GetOwsOneColumnInfo(this.Context, expression);
|
||||
var column = ExpressionTool.GetOwnsOneColumnInfo(this.Context, expression);
|
||||
var columnName = column.DbColumnName;
|
||||
if (this.Context.IsJoin)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user