public void CreateAccessFuncExpression() { var obj = new Student() { Name = "HaHa" }; var expFunc = AccessExpressionFactory.CreateAccessExpressionFunc <Student>("Name"); Assert.Equal(expFunc.Compile().Invoke(obj), obj.Name); }
public void CreateAccessFunc() { var obj = new Student() { Name = "HaHa" }; var func = AccessExpressionFactory.CreateAccessFunc <Student>("Name"); Assert.Equal(func(obj), obj.Name); }
/// <summary> /// 使用指定屬性進行Group操作 /// </summary> /// <typeparam name="TSource">元素類別</typeparam> /// <typeparam name="TKey">主鍵類別</typeparam> /// <param name="source">目前實例</param> /// <param name="key">主鍵屬性名稱</param> /// <returns>使用指定key進行Group結果</returns> public static IEnumerable <IGrouping <TKey, TSource> > GroupBy <TSource, TKey>(this IEnumerable <TSource> source, string key) { return(source.GroupBy(AccessExpressionFactory.CreateAccessFunc <TSource, TKey>(key))); }