예제 #1
0
        /// <summary>Limits the query to results that match specified filtering criteria.</summary>
        /// <returns>
        /// A new <see cref="T:System.Data.Entity.Core.Objects.ObjectQuery`1" /> instance that is equivalent to the original instance with WHERE applied.
        /// </returns>
        /// <param name="predicate">The filter predicate.</param>
        /// <param name="parameters">Zero or more parameters that are used in this method.</param>
        /// <exception cref="T:System.ArgumentNullException"> predicate  is null or parameters  is null.</exception>
        /// <exception cref="T:System.ArgumentException">The  predicate  is an empty string.</exception>
        public ObjectQuery <T> Where(string predicate, params ObjectParameter[] parameters)
        {
            Check.NotEmpty(predicate, "predicate");
            Check.NotNull(parameters, "parameters");

            return(new ObjectQuery <T>(EntitySqlQueryBuilder.Where(QueryState, Name, predicate, parameters)));
        }
        /// <summary>
        ///   This query-builder method creates a new query whose results are the
        ///   results of this query filtered by some criteria.
        /// </summary>
        /// <param name="predicate">
        ///   The filter predicate.
        /// </param>
        /// <param name="parameters">
        ///   An optional set of query parameters that should be in scope when parsing.
        /// </param>
        /// <returns>
        ///   a new ObjectQuery instance.
        /// </returns>
        /// <exception cref="ArgumentNullException">
        ///   If either argument is null.
        /// </exception>
        /// <exception cref="ArgumentException">
        ///   If the filter predicate command text is empty.
        /// </exception>
        public ObjectQuery <T> Where(string predicate, params ObjectParameter[] parameters)
        {
            EntityUtil.CheckArgumentNull(predicate, "predicate");
            EntityUtil.CheckArgumentNull(parameters, "parameters");

            if (StringUtil.IsNullOrEmptyOrWhiteSpace(predicate))
            {
                throw EntityUtil.Argument(System.Data.Entity.Strings.ObjectQuery_QueryBuilder_InvalidFilterPredicate, "predicate");
            }

            return(new ObjectQuery <T>(EntitySqlQueryBuilder.Where(this.QueryState, this.Name, predicate, parameters)));
        }
 /// <summary>Limits the query to results that match specified filtering criteria.</summary>
 /// <returns>
 /// A new <see cref="T:System.Data.Entity.Core.Objects.ObjectQuery`1" /> instance that is equivalent to the original instance with WHERE applied.
 /// </returns>
 /// <param name="predicate">The filter predicate.</param>
 /// <param name="parameters">Zero or more parameters that are used in this method.</param>
 /// <exception cref="T:System.ArgumentNullException"> predicate  is null or parameters  is null.</exception>
 /// <exception cref="T:System.ArgumentException">The  predicate  is an empty string.</exception>
 public ObjectQuery <T> Where(string predicate, params ObjectParameter[] parameters)
 {
     Check.NotEmpty(predicate, nameof(predicate));
     Check.NotNull <ObjectParameter[]>(parameters, nameof(parameters));
     return(new ObjectQuery <T>(EntitySqlQueryBuilder.Where(this.QueryState, this.Name, predicate, parameters)));
 }