Ejemplo n.º 1
0
 /// <summary>
 ///  从 <see cref="IDbQueryable{TSource}"/> 创建 <see cref="List{TSource}"/>
 /// </summary>
 /// <typeparam name="TSource">source 的元素类型</typeparam>
 /// <param name="source">查询序列</param>
 /// <returns></returns>
 public static List <TSource> ToList <TSource>(this IDbQueryable <TSource> source)
 {
     return(source.Execute <List <TSource> >());
 }
Ejemplo n.º 2
0
        /// <summary>
        /// 返回指定序列中满足条件的元素数量
        /// </summary>
        /// <typeparam name="TSource">source 的元素类型</typeparam>
        /// <param name="source">查询序列</param>
        /// <param name="predicate">用于测试每个元素是否满足条件的函数</param>
        /// <returns></returns>
        public static int Count <TSource>(this IDbQueryable <TSource> source, Expression <Func <TSource, bool> > predicate)
        {
            IDbQueryable <int> query = source.CreateQuery <int>(DbExpressionType.Count, predicate);

            return(query.Execute <int>());
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 返回泛型 <see cref="IDbQueryable{TSource}"/> 中的所有值之和
        /// </summary>
        /// <typeparam name="TSource">source 的元素类型</typeparam>
        /// <typeparam name="TResult">keySelector 的元素类型</typeparam>
        /// <param name="source">查询序列</param>
        /// <param name="keySelector">应用于每个元素的转换函数</param>
        /// <returns></returns>
        public static TResult Sum <TSource, TResult>(this IDbQueryable <TSource> source, Expression <Func <TSource, TResult> > keySelector)
        {
            IDbQueryable <TResult> query = source.CreateQuery <TResult>(DbExpressionType.Sum, keySelector);

            return(query.Execute <TResult>());
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 返回序列中满足指定条件的第一个元素,如果未找到这样的元素,则返回默认值
        /// </summary>
        /// <typeparam name="TSource">source 的元素类型</typeparam>
        /// <param name="source">查询序列</param>
        /// <param name="predicate">用于测试每个元素是否满足条件的函数</param>
        /// <returns></returns>
        public static TSource FirstOrDefault <TSource>(this IDbQueryable <TSource> source, Expression <Func <TSource, bool> > predicate = null)
        {
            IDbQueryable <TSource> query = source.CreateQuery <TSource>(DbExpressionType.FirstOrDefault, predicate);

            return(query.Execute <TSource>());
        }
Ejemplo n.º 5
0
        /// <summary>
        /// 确定序列是否包含任何元素
        /// </summary>
        /// <typeparam name="TSource">source 的元素类型</typeparam>
        /// <param name="source">查询序列</param>
        /// <returns></returns>
        /// <param name="predicate">用于测试每个元素是否满足条件的函数</param>
        /// <returns>如果源序列中存在元素通过了指定谓词中的测试,则为 true;否则为 false</returns>
        public static bool Any <TSource>(this IDbQueryable <TSource> source, Expression <Func <TSource, bool> > predicate)
        {
            IDbQueryable <bool> query = source.CreateQuery <bool>(DbExpressionType.Any, predicate);

            return(query.Execute <bool>());
        }
Ejemplo n.º 6
0
 /// <summary>
 ///  从 <see cref="IDbQueryable{TSource}"/> 创建 <see cref="DataSet"/>
 /// </summary>
 /// <typeparam name="TSource">source 的元素类型</typeparam>
 /// <param name="source">查询序列</param>
 /// <returns></returns>
 public static DataSet ToDataSet <TSource>(this IDbQueryable <TSource> source)
 {
     return(source.Execute <DataSet>());
 }