2015-06-03 2 views
0
public void GenerateExcelReport(List<EventHistory> lstData) 
    { 
    } 

Я использую приведенный выше список как параметр (т. Е. Список типов «EventHistory»), если я хочу передать все типы списков, а затем как создать параметр списка вообще?Как создать параметр общего списка, который будет принимать все типы классов?

ответ

0

вы п ПЕД добавить параметр универсального типа для T к вашей методе:

void GenerateExcelReport<T>(List<T> list){ 
} 

Затем вызовите его:

GenerateExcelReport(stringList); 
    GenerateExcelReport(objectList); 
1

Если вы хотите обрабатывать все виды списков, единственное, что является общим является в tList<T>:

public void GenerateExcelReport<T>(List<T> lstData) 
{ 
    // ... 
} 

Документация: Generic Methods

Поскольку вы упомянули, что вы хотите «принимать все типы классов?», вы можете добавить ограничение, чтобы только классы, а не типы значений:

public void GenerateExcelReport<T>(List<T> lstData) where T: class 
{}