//TODO singleordefault, like below method
 public void AddValueDependency(string triggerPropertyName, LinqPropertyReference dependentPropertyReference)
 {
     if (ValueDependencyChainEntries.Any(e => e.TriggerPropertyName == triggerPropertyName))
     {
         var valueDependencyChainEntry = ValueDependencyChainEntries.Single(e => e.TriggerPropertyName == triggerPropertyName);
         valueDependencyChainEntry.AddDependentProperty(dependentPropertyReference);
         return;
     }
     //else
     //{
     //	var d = new ValueDependencyChainEntry(triggerPropertyName, dependentPropertyReference);
     //	ValueDependencyChainEntries.Add()
     //}
     ValueDependencyChainEntries.Add(new ValueDependencyChainEntry(triggerPropertyName, dependentPropertyReference));
 }
 public void AddDependentProperty(LinqPropertyReference dependentProperty)
 {
     dependentPropertyReferences.Add(dependentProperty);
 }
 public ValueDependencyChainEntry(string triggerPropertyName, LinqPropertyReference dependentPropertyReference)
     : this(triggerPropertyName, new[] { dependentPropertyReference })
 {
 }