C# 将派生类型列表返回到基类型

C# 将派生类型列表返回到基类型,c#,C#,我将类定义如下: public abstract class EmployeeBase { } public class Employee: EmployeeBase { public string Name { get; set; } public string Status { get; set; } } List<EmployeeBase> GetData( ) { List<Employee> lstEmployees = new List

我将类定义如下:

public abstract class EmployeeBase
{

}
public class Employee: EmployeeBase
{
   public string Name { get; set; }
   public string Status { get; set; }
} 
List<EmployeeBase> GetData( )
{

  List<Employee> lstEmployees = new List<Employee>();
  return lstEmployees;
 }
现在,我编写了一个方法,如下所示:

public abstract class EmployeeBase
{

}
public class Employee: EmployeeBase
{
   public string Name { get; set; }
   public string Status { get; set; }
} 
List<EmployeeBase> GetData( )
{

  List<Employee> lstEmployees = new List<Employee>();
  return lstEmployees;
 }
List GetData()
{
List lstEmployees=新列表();
返回员工;
}

代码引发类型转换错误。我想用这种实现使我的GetData方法通用。我怎么能做到

您只需将GetData的实现更改为:

List<EmployeeBase> GetData()
{
    List<EmployeeBase> lstEmployees = new List<EmployeeBase>();

    // Add actual Employee objects to lstEmployees

    return lstEmployees;
}
List GetData()
{
List lstEmployees=新列表();
//将实际的Employee对象添加到lstEmployees
返回员工;
}

为什么不在GetData中实例化
List
,或者将GetData的返回类型更改为
List
?需要更多信息来确定正确的方法。post显示缺少研究EmployeeBase是一个抽象类,GetData方法将返回从EmployeeBase派生的实体。GetData方法应该能够返回从Employee Base派生的任何类型的列表。我如何才能做到这一点?