zoukankan      html  css  js  c++  java
  • .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

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



  • 相关阅读:
    交换机技术
    第七周课后总结
    以太网原理
    test
    NetCore第一步:千里之行 始于环境构筑
    第二十课(一)
    第十九课(三)
    第十九课(二)
    第十九课(一)
    第十八课(三)
  • 原文地址:https://www.cnblogs.com/zhixin9001/p/5008122.html
Copyright © 2011-2022 走看看