Esempio n. 1
0
 public static IMemberInfo Get_MemberInfo(IModelRuntimeCalculatedMember runtimeCalculatedMember) {
     if (InterfaceBuilder.RuntimeMode) {
         CreateMemberInfo(runtimeCalculatedMember);
         return runtimeCalculatedMember.ModelClass.TypeInfo.FindMember(runtimeCalculatedMember.Name);
     }
     return ModelMemberLogic.Get_MemberInfo(runtimeCalculatedMember);
 }
Esempio n. 2
0
 static bool CheckTag(IModelRuntimeCalculatedMember runtimeCalculatedMember) {
     if (Equals(true, runtimeCalculatedMember.Tag)) {
         runtimeCalculatedMember.Tag = null;
         return true;
     }
     return false;
 }
Esempio n. 3
0
 static XPClassInfo FindXPClassInfo(IModelRuntimeCalculatedMember runtimeCalculatedMember) {
     var typeInfo = (TypeInfo)runtimeCalculatedMember.ModelClass.TypeInfo;
     return typeInfo.IsInterface ? FindDCXPClassInfo(typeInfo) : XpandModuleBase.Dictiorary.GetClassInfo(typeInfo.Type);
 }
Esempio n. 4
0
 static bool ValidState(IModelRuntimeCalculatedMember runtimeCalculatedMember, XpandCalcMemberInfo memberInfo) {
     if (CheckTag(runtimeCalculatedMember)) return false;
     if (memberInfo == null && !string.IsNullOrEmpty(runtimeCalculatedMember.Name)) {
         runtimeCalculatedMember.Tag = true;
         if (runtimeCalculatedMember.Type != null && !string.IsNullOrEmpty(runtimeCalculatedMember.AliasExpression)) {
             runtimeCalculatedMember.Tag = null;
             return true;
         }
     }
     return false;
 }
Esempio n. 5
0
 static XpandCalcMemberInfo CreateXpandCalcMemberInfo(IModelRuntimeCalculatedMember runtimeCalculatedMember, XPClassInfo xpClassInfo) {
     var xpandCalcMemberInfo = new XpandCalcMemberInfo(xpClassInfo, runtimeCalculatedMember.Name, runtimeCalculatedMember.Type, runtimeCalculatedMember.AliasExpression);
     var typesInfo = ((BaseInfo)runtimeCalculatedMember.ModelClass.TypeInfo).Store;
     typesInfo.RefreshInfo(xpClassInfo.ClassType);
     return xpandCalcMemberInfo;
 }
Esempio n. 6
0
 static void CreateMemberInfo(IModelRuntimeCalculatedMember runtimeCalculatedMember) {
     XPClassInfo classInfo = FindXPClassInfo(runtimeCalculatedMember);
     var xpandCalcMemberInfo = (XpandCalcMemberInfo)classInfo.FindMember(runtimeCalculatedMember.Name);
     if (ValidState(runtimeCalculatedMember, xpandCalcMemberInfo)) {
         var xpClassInfo = FindXPClassInfo(runtimeCalculatedMember);
         var calcMemberInfo = (XpandCalcMemberInfo)xpClassInfo.FindMember(runtimeCalculatedMember.Name);
         if (calcMemberInfo == null) {
             xpandCalcMemberInfo = CreateXpandCalcMemberInfo(runtimeCalculatedMember, xpClassInfo);
         }
     }
     UpdateAliasExpression(xpandCalcMemberInfo, runtimeCalculatedMember.AliasExpression);
 }