public bool Equals(SingleProperty other) { if (ReferenceEquals(null, other)) { return(false); } if (ReferenceEquals(this, other)) { return(true); } return(_property.DeclaringType == other._property.DeclaringType && _property.Name == other._property.Name); }
public PropertyChain(IValueGetter[] valueGetters) { _chain = new IValueGetter[valueGetters.Length - 1]; for (int i = 0; i < _chain.Length; i++) { _chain[i] = valueGetters[i]; } var innerValueGetter = valueGetters[valueGetters.Length - 1] as PropertyValueGetter; if (innerValueGetter != null) { _innerProperty = new SingleProperty(innerValueGetter.PropertyInfo); } _valueGetters = valueGetters; }