public dynamic GetValue([CallerMemberName] string property = "UnspecifiedProperty") { if (CurrentEntity.Value == null) { return(null); } var prop = CurrentEntity.Value.GetType().GetProperty(property, BindingFlags.Public | BindingFlags.Instance); if (prop == null) { return(null); } return(ChangeTracking.ContainsKey(property) ? ChangeTracking[property] : prop.GetValue(CurrentEntity.Value)); }
public void SetValue(dynamic value, [CallerMemberName] string property = "UnspecifiedProperty") { if (CurrentEntity.Value.GetType().GetProperty(property, BindingFlags.Public | BindingFlags.SetProperty | BindingFlags.Instance) == null) { return; } if (!ChangeTracking.ContainsKey(property)) { //HACK: doing this shit cuz jbcollection generating some error long after add no control to prevent error try { ChangeTracking.AddOrUpdate(property, value); } catch { } } else { ChangeTracking[property] = value; } this.RaisePropertyChanged(property); }
public void SetValue(dynamic value, [CallerMemberName] string property = "UnspecifiedProperty") { if (State.Value.Entity.GetType().GetProperty(property, BindingFlags.Public | BindingFlags.SetProperty | BindingFlags.Instance) == null) { return; } if (!ChangeTracking.ContainsKey(property)) { //Hack: fix this try { ChangeTracking.AddOrUpdate(property, value); } catch { } } else { ChangeTracking[property] = value; } this.RaisePropertyChanged(property); }
protected bool GetPropertyIsChanged([CallerMemberName] string property = "UnspecifiedProperty") { return(ChangeTracking.ContainsKey(property)); }