/// <summary> /// Returns a Or criteria instance. /// </summary> /// <param name="first">The first criteria.</param> /// <param name="second">The second criteria.</param> public Or(Criteria first, Criteria second) { if (first == null) throw new ArgumentNullException("first"); if (second == null) throw new ArgumentNullException("second"); FirstElement = first; SecondElement = second; }
/// <summary> /// Creates an Or criteria instance. /// </summary> /// <param name="criteria">The specified criteria.</param> /// <returns>An <see cref="Or"/> criteria instance.</returns> public Criteria Or(Criteria criteria) { return new Or(this, criteria); }
/// <summary> /// Creates an And criteria instance. /// </summary> /// <param name="criteria">The specified criteria.</param> /// <returns>An <see cref="And"/> criteria instance.</returns> public Criteria And(Criteria criteria) { return new And(this, criteria); }
protected override void ExtractValues(List<object> values) { List<object> arguments = new List<object>(values); Live = ExtractIfContains(ref arguments, Query.LiveKey); Name = ExtractField(ref arguments, Query.NameKey); var skip = ExtractField(ref arguments, Query.SkipKey); Skip = !string.IsNullOrEmpty(skip) ? int.Parse(skip) : -1; var take = ExtractField(ref arguments, Query.TakeKey); Take = !string.IsNullOrEmpty(take) ? int.Parse(take) : -1; Projection = ExtractProjection(ref arguments); OrderBy = ExtractOrderBy(ref arguments); Where = (Criteria) CreateCriteria(arguments); }