首页 > 解决方案 > 从空对象获取类型

问题描述

第一的:

public class ClassePrincipal
{
    [Key] public long IdPrinc { get; set; }
    public string NomePrinc { get; set; }
    public string Princ { get; set; }


    public override string ToString()
    {
        return "ID: " + IdPrinc + " NomePrinc: " + NomePrinc + " Princ: " + Princ;
    }
}

第二:

public class Classe_Secundaria
{
    [Key] public long IdSec { get; set; }
    public string NomeSec { get; set; }
    public string Sec { get; set; }


    [Primary] public ClassePrincipal ClassePrincipal { get; set; }

    public override string ToString()
    {
        return "ID Sec: " + IdSec + " NomeSec: " + NomeSec + " Sec: " + Sec + (ClassePrincipal != null ? " ClassePrincipal: " + ClassePrincipal.ToString() : "");

    }
}

我用这个:

Classe_Secundaria x = null;

我需要从 x 中获取类型,但 x 为 Null,如何使用反射从 x 中获取类型?没有反射我使用:

Type type = TypedReference.GetTargetType(__makeref(x));

当我在反射中使用此代码时,他只得到对象类型,而不是 Classe_Secundaria 类型

标签: c#reflectiontypes

解决方案


推荐阅读