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

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



  • 相关阅读:
    向量场中的积分
    Oracle 动态视图4 V$SESSION_WAIT & V$SESSION_EVENT
    Oracle 动态视图3 V$SESSION
    Oracle 动态视图2 V$LOCKED_OBJECT
    Oracle 摘去数据块的面纱
    Oracle 动态视图1 V$LOCK
    Oracle Lock 概述
    Oracle 监听动态注册与静态注册
    Oracle用户进程跟踪
    Oracle SGA参数调整
  • 原文地址:https://www.cnblogs.com/zhixin9001/p/5008122.html
Copyright © 2011-2022 走看看