获取字段类型名称的方法?

3

如何在反射中获取字段的类型?我已经尝试过FieldInfo.Name和其他一些选项,但都没有成功。

假设我有int x = 5;。如何获取"System.Int32""int"字符串?

3个回答

5
你需要的是FieldInfo.FieldType
如果你想要完整的类型名称,请使用;
myFieldInfo.FieldType.FullName

谢谢,我来自Java,这有点令人困惑,因为在Java中,你需要的所有值都有getter,所以你可以在getter列表中查找。 在C#中,有时候是属性,有时候是get方法,有点头疼。 - JavaSa

0
string type = x.GetType().FullName;

类型将是:"System.Int32"


在反射中,当迭代字段时,您无法访问变量名。 - JavaSa

-1
使用 GetType 方法 - x.GetType().Name;

在反射中,当迭代字段时,您无法访问变量名。 - JavaSa

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接