请参见以下示例。当具有属性类型是带有通用类型参数的类的属性时,无论通用类型参数如何,我如何列出所有这些属性?
$_POST['disp_ch_ids']
答案 0 :(得分:3)
您可以使用GetGenericTypeDefinition
方法来获取通用类型的开放形式,然后将其与VehicleCollection<>
(开放形式)进行比较,如下所示:
var vehicleProperties = typeof(Program).GetProperties()
.Where(p =>
p.PropertyType.IsGenericType &&
p.PropertyType.GetGenericTypeDefinition() == typeof(VehicleCollection<>))
.ToList();
IsGenericType
用于确保属性类型是通用的。