在反射中创建的 class 列表

List with class created in reflection

我使用反射在 运行 时间内创建了一个 class。我需要创建一个反射类型的列表集合。怎么做 ?

MyClassBuilder MCB = new MyClassBuilder("ReportRecord");
var myclass = MCB.CreateMyProperty(myTable.Columns);
Type TP = myclass.GetType();
var myObject = Activator.CreateInstance(TP);
List<dynamic> ccc = new List<dynamic>();

在上面的代码中我创建了一个 class "ReportRecord" 。我需要创建 ReportRecord 的集合,即 List。

var listType = typeof(List<>).MakeGenericType(TP);
var list = (IList)Activator.CreateInstance(listType);

但是请注意,这不是 List<dynamic>; "variance" 不是这样的。但是,如果适合您,您可以将单个元素视为 dynamic

foreach(dynamic item in list) {...}