0

有人可以帮我解决这个问题吗?

我有一个基类:

public class BaseShowFilter {
    public int    TotalCount { get; set; }  
    public int    FromNo { get; set; }
    public int    ShowCount { get; set; }
    public string SortFieldName { get; set; }
    public bool   SortAsc { get; set; }
}

以及来自这个基类的几个 ChildClasses。然后我有一些其他类存储在(例如)

IEnumerable<OtherClassXXX> = ....

我想使用 BaseShowFilter 中实现的相同方法对所有这些过滤器应用一些过滤器:

例如我需要

dstList = srcList.Skip(this.FromNo-1).Take(this.ShowCount);

所以我需要在 BaseShowFilter 中实现一个函数,该函数将在参数 IEnumerable 中接受并且还将返回 IEnumerable

我该怎么写?在纯 C++ 中,它会像 1,2,3 一样简单......但在这里我不知道怎么做。结果可能是这样的:

public class BaseShowFilter {
    public int    TotalCount { get; set; }  
    public int    FromNo { get; set; }
    public int    ShowCount { get; set; }
    public string SortFieldName { get; set; }
    public bool   SortAsc { get; set; }

    public T FilterList<T>(T SrcList) where T :IEnumerable<> {
        return srcList.Skip(this.FromNo-1).Take(this.ShowCount);
    }
}
4

1 回答 1

1

这是通常的方法:

public IEnumerable<T> FilterList<T>(IEnumerable<T> source)
{
    return source.Skip(this.FromNo - 1).Take(this.ShowCount);
}
于 2013-01-03T09:19:07.347 回答