是否可以将通用 IEnumerable 传递给函数?

mar*_*zzz 3 c# ienumerable function

我有这个功能:

private void Pager(IEnumerable<t> tEnum)
{
   ...
}
Run Code Online (Sandbox Code Playgroud)

我想传递不同的 IEnumerable,比如IEnumerable<MyObject1>IEnumerable<MyObject2>

是否可以?

dle*_*lev 6

当然。只需使方法通用:

private void Pager<T>(IEnumerable<T> tEnum)
{
   ...
}
Run Code Online (Sandbox Code Playgroud)

如果您查看 LINQ-to-objects 扩展方法,这也是它们的工作方式(没有thisIEnumerable<T>as per extension method 语法之前的附加内容。)