Esempio n. 1
0
 public static IEnumerable <TDestination> ToList <TSource, TDestination>(this IEnumerable <TSource> source)
     where TDestination : new()
 {
     return(IEnumerableExtensions.ToList <TSource, TDestination>(
                source: source,
                selector: t => t.Clone <TDestination>(),
                defaultValue: null));
 }
 /// <summary>
 /// Select+ToList的组合版本(异步)
 /// </summary>
 /// <typeparam name="TSource"></typeparam>
 /// <typeparam name="TResult"></typeparam>
 /// <param name="source"></param>
 /// <param name="selector"></param>
 /// <param name="defaultValue">当<paramref name="source"/>为<see cref="null"/>时,返回的值.默认值为:0长度的<see cref="List{T}"/></param>
 /// <returns></returns>
 public static Task <List <TResult> > ToListAsync <TSource, TResult>(
     this IEnumerable <TSource> source,
     Func <TSource, TResult> selector,
     List <TResult>?defaultValue = null)
 {
     return(Task.Run(() =>
     {
         return IEnumerableExtensions.ToList <TSource, TResult>(
             source: source,
             selector: selector,
             defaultValue: defaultValue);
     }));
 }