我有这个功能:
private void Pager(IEnumerable<t> tEnum)
{
...
}
我希望传递不同的IEnumerable,例如IEnumerable<MyObject1>
或IEnumerable<MyObject2>
。
有可能吗?
答案 0 :(得分:4)
不确定。只需使方法通用:
private void Pager<T>(IEnumerable<T> tEnum)
{
...
}
如果你看一下LINQ-to-objects扩展方法,那就是他们做事的方式(根据扩展方法语法,在this
之前没有额外的IEnumerable<T>
。)
答案 1 :(得分:2)
您可以使整个功能通用:
private void Pager<T>(IEnumerable<T> tEnum)
{
// here T can be anything
}
// you can call it like:
Pager(new int[]{10,20});
Pager(new string[]{"meep","x"});
答案 2 :(得分:0)
也许这样?
private void Pager<t>(IEnumerable<t> tEnum)