C#泛型类型GetProperties()返回0个属性

C#泛型类型GetProperties()返回0个属性,c#,generics,reflection,C#,Generics,Reflection,我有以下代码,我希望返回泛型类型中的属性 var newType = new T(); Type t = newType.GetType(); var prop = t.GetProperties(); prop有0个属性,我无法理解为什么在调试时检查类型对象时显示的是正确的对象。我使用的对象作为泛型 public class SOPOH { public String OHDELF { get; set; } publ

我有以下代码,我希望返回泛型类型中的属性

   var newType = new T();
            Type t = newType.GetType();
            var prop = t.GetProperties();
prop有0个属性,我无法理解为什么在调试时检查类型对象时显示的是正确的对象。我使用的对象作为泛型

public class SOPOH
{

    public String OHDELF { get; set; }

    public Decimal OHORDR { get; set; }

    public String OHSTAT { get; set; }

    public String OHSUSP { get; set; }

    public Decimal OHODDT { get; set; }

    public String OHCUSN { get; set; }

    public String OHCSUB { get; set; }
}
prop返回
{System.Reflection.PropertyInfo[0]}

t返回
{Name=“SOPOH”FullName=“AS400_Library.Repositorys.CHGDGADV.SOPOH”}

泛型类:

     public class Repository<T> : IRepository<T> where T : new()
    {

        public List<T> GetAll(Settings settings)
        {
            var returned = new List<T>();

            var newType = new T();
            Type t = newType.GetType();
            var prop = t.GetProperties();

            Console.WriteLine(prop.Length);


            return returned;

        }
}

将泛型函数或类的声明代码放在此处,您的代码也可以与泛型一起使用。我将您的代码放入
public void GetProperties(),其中T:new()
并调用
GetProperties()
,它返回了与
typeof(SOPOH)相同的属性列表。GetProperties()
..“寻求调试帮助的问题(“为什么此代码不起作用?”)必须包括[…]在问题本身中重现问题所需的最短代码”(来自)-我们无法用问题中的代码重现您的问题,这使得此问题偏离主题。我们很乐意提供帮助,所以只需提供一个最小的完整和可验证的示例来演示您的问题。有关这意味着什么的更多信息,请参见。您必须发布一个,代码本身是有效的,您没有发布的代码中一定有一个bug。让我澄清一下,您有两个不同的类,分别称为
SOPOH
,其中一个是
存储库
?如果是这样,您确定您正在扫描的属性就是您认为正在扫描的属性吗?我们可以创建一个,而不是一堆代码片段来拼凑吗?
    public interface IRepository<T> where T : new()
{
    List<T> GetAll(Settings settings);
}
 public class SOPOH : Repository<SOPOH>
{

    public SOPOH()
    {
    }

}
  var t = new AS400_Library.Repositorys.CHGDGADV.SOPOH();
        var values = t.GetAll(new Settings());