我试图抽象出一个方法,这样我就可以将它用于我的所有List对象。
目前我的方法声明如下:
private void GetResults(List<myclass1> testList, List<myclass1> masterList, string tableName)
我想做的是将形式参数概括为:
private void GetResults(List<object> testList, List<object> masterList, string tableName)
然后我想传递我需要的任何类型的列表。这当然是给我一个编译错误(对于广义尝试)。
我调用的方法如下:
List<myclass1> testList = new List<myclass1>();
List<myclass1> masterList = new List<myclass1>();
GetResults(testList, masterList, "form_table");
有办法做到这一点吗?
答案 0 :(得分:9)
您可以使用Generics
private void GetResults<T>(List<T> testList, List<T> masterList, string tableName)
T
的类型将根据您的参数类型从使用情况中推断出来。
这假设两个参数都是相同的类型。如果它们不胜,那么第二个参数需要另一个通用参数。