c# - 反射泛型列表类型的属性

标签 c# .net generics reflection

我有一个像下面这样的类

public class Foo<T>
{
  public List<T> Items{ get; set; }
}

我有一个上面类的实例,

Foo<Bar> bars = GetBars();

如何使用反射获取 Bar 的属性?

我试试这个

PropertyInfo[] properties = bars.Items.First().GetType().GetProperties();

但我认为,这不是很好的方法,有没有更好的方法呢?

最佳答案

var Properties = bars.GetType().GetGenericArguments()[0].GetProperties();

假设您不知道列表将包含的类型。

如果它总是一个 Bar 然后使用 typeof(Bar).GetProperties();

关于c# - 反射泛型列表类型的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6294030/

相关文章:

c# - 在 NHibernate 中全局查找对象引用

c# - IEnumerable<动态> linq 表达式

c# - 如何计算最低系统要求?

java - 使方法返回类型泛型

javascript - Signalr Core 1.0.3 - 在页面刷新时保持连接

c# - Entity Framework 的“使用”关键字与类字段

c# - XmlSerializer 和工厂创建的元素

c# - WCF 在关闭 ServiceHost 时等待操作完成

java - 在 Java 中,List<Object> 与 List< 有何不同?扩展对象>?

c# - C#获取IEnumerable <TModel>的类型