Example #1
0
        public void InvalidateAllDependentProperties()
        {
            var linqEntityType = GetType();

            foreach (var linqProperty in LinqPropertyBase.RegisteredPropertiesForOwnerType(linqEntityType))
            {
                InvalidateProperty(linqProperty);
            }
        }
Example #2
0
 internal EffectiveValueEntry GetEffectiveValue(LinqPropertyBase linqProperty)
 {
     if (EffectiveValues.ContainsKey(linqProperty.GlobalIndex))
     {
         var effectiveValue = EffectiveValues[linqProperty.GlobalIndex];
         return(effectiveValue);
     }
     if (linqProperty.OwnerType == GetType())
     {
         EffectiveValues.Add(linqProperty.GlobalIndex, new EffectiveValueEntry(this, linqProperty));
         var effectiveValue = EffectiveValues[linqProperty.GlobalIndex];
         return(effectiveValue);
     }
     throw new NotSupportedException("only valid on the LinqProperty's Owner type.");
 }
Example #3
0
        //TODO Generic GetValueBase

        public void InvalidateProperty(LinqPropertyBase linqProperty)
        {
            var effectiveValueEntry = GetEffectiveValue(linqProperty);

            effectiveValueEntry.InvalidateCache();
        }
Example #4
0
        public object GetValueBase(LinqPropertyBase linqProperty)
        {
            var effectiveValueEntry = GetEffectiveValue(linqProperty);

            return(effectiveValueEntry.GetValue());
        }
Example #5
0
 internal static void RegisterInternal(LinqPropertyBase linqProperty)
 {
     RegisteredPropertyList.Add(linqProperty);
     linqProperty.BuildDependentPropertyChain();
 }