0
有人可以幫我解決這個問題嗎?模板IEnumerable的C#模板方法<T>。可能嗎?
我有一個基類:
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);
}
}