.NET 获取类内成员的名称,以字符串形式显示

需要做一个功能,显示类内的属性名和对应的值。比如有类

Public Class SupervisedParams
    Public TestMode As string
    Public Time As String
    Public TorquePV As Single
    Public PrsPV As Single
End Class

这里用了公共字段代替属性,因为VB.NET没有自动属性,必须处理get set 实在麻烦。

需要显示:TorquePV =2.3    

                   PrsPV =3.2        之类。

但一般只能获取类内字段的值,却不能取得这个字段的字符串形式。

后来查到了方法,测试代码如下:

【取得字段名的字符串形式】

    Public Shared Sub WriteLine(ByVal params As SupervisedParams)
        Dim type As Type = params.GetType

        Dim m() As MethodInfo = type.GetMethods【获取方法名】
        For Each item In m
            Debug.Print(item.Name)
        Next

        Dim pi() As PropertyInfo = type.GetProperties【获取属性名】
        For Each item In pi
            Debug.Print(item.Name)
        Next

        Dim fi() As FieldInfo = type.GetFields【获取字段名】
        For Each item In fi
            Debug.Print(item.Name)
            Debug.Print(item.GetValue(params))【还可以方向取得该字段的值】
        Next
    End Sub


MethodInfo 等几个关键类属于System.Reflection

传说中的反射啊,好高大上。等忙完了系统学习学习。



 

转载于:https://www.cnblogs.com/zhixin9001/p/5008122.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值