我的通用存储库类中有一个如下所示的方法:

public List<T> GetPagedData(int startindex, int pagesize, string sorting, Func<T, T> selector = null)
{
    IQueryable<T> pageddata = dbset;
    pageddata = pageddata.OrderBy(sorting).Skip(startindex).Take(pagesize);

    if (selector != null)
        pageddata = pageddata.Select(selector).AsQueryable();

    return pageddata.ToList();
}


我希望能够从此方法返回动态/匿名类型列表。我尝试了Func<T, dynamic>Expression<Func<T, dynamic>>并在此处和此处进行转换,但是即使编译了,我也总是遇到异常。请注意,我打算将其用作基于约定的格式,并且所有列名称都将匹配。

我知道这可能看起来有些麻烦,但是可以提供任何帮助。如果我错了,也请告诉我在哪里。

最佳答案

使用var

  public List<T> GetPagedData(int startindex, int pagesize, string sorting, Func<T, T>
  selector = null)
 {
    var pageddata = dbset.OrderBy(sorting).Skip(startindex).Take(pagesize);

    if (selector != null)
       pageddata = pageddata.Select(selector).AsQueryable();

    return pageddata.ToList();
  }

关于c# - 从通用存储库返回动态列表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22982136/

10-13 06:43