/// <summary> /// Adds a path predicate; generally compares two columns in the database. /// </summary> /// <param name="path">The left-side path of the object property.</param> /// <param name="marker">An equality or inequality marker.</param> /// <param name="secondPath">The right-side path of the object property.</param> /// <returns>Returns current group.</returns> public WhereGroup AddPathPredicate(string path, RelationMarker marker, string secondPath) { PathPredicate predicate; predicate = new PathPredicate(path); predicate.Marker = marker; predicate.SecondPath = secondPath; _predicates.Add(predicate); return(this); }
/// <summary> /// Adds a Value predicate; generally compares a column to a scalar value. /// </summary> /// <typeparam name="T">The type of the value to compare with.</typeparam> /// <param name="path">The path of the object property to compare value with.</param> /// <param name="marker">An equality or inequality marker.</param> /// <param name="value">The value to compare with.</param> /// <returns>Returns current group.</returns> public WhereGroup AddValuePredicate <T>(string path, RelationMarker marker, T value) { ValuePredicate <T> predicate; predicate = new ValuePredicate <T>(path); predicate.Marker = marker; predicate.Value = value; _predicates.Add(predicate); return(this); }