zoukankan      html  css  js  c++  java
  • 读匿名object对象的属性值

    读匿名object对象的属性值


    1、定义读object对象值的功能方法

    public static class StaticClass
    {
        public static string ValueByKey(this object obj,string key)
        {
            Type type = obj.GetType();
            //可以通过GetProperty取得对象指定的属性信息
            PropertyInfo info = type.GetProperty("属性名");
            PropertyInfo[] ps = type.GetProperties();
            Dictionary<string, string> dic = new Dictionary<string, string>();
            foreach (PropertyInfo p in ps)
            {            
                var n = p.Name;
                //可以通过SetValue设置对象的属性值
                //p.SetValue("属性名", "属性值",null);
                var v = p.GetValue(obj, null);
                var t = p.PropertyType;
                if (n != null && v != null)
                    dic.Add(n.ToString(), v.ToString());
            }
            return dic[key];
        }
    }
    

      

    2、调用

    string value = new { id = 1, title = "标题" }.GetValue("id");   //结果:1      正确
    

      

    判断为值类型还是对象类型

    Object obj = "我是值类型";
    if (obj.GetType().IsValueType)
        Console.WriteLine( "类型:" + obj + "为值类型");
    else
        Console.WriteLine( "类型:" +obj + "为引用类型");
    

    判断对象是否为Dictionary类型

    如果知道Dictionary的类型T1, T2,就可以直接使用下面的方式
    if (obj is Dictionary<T1, T2>)
    

      

  • 相关阅读:
    如何利用UltraEdit语法着色来编辑shell脚本
    css 运动背景
    页面加载进度条
    jScrollPane滚动条
    页面加载进度条改进版
    js页面新消息提示
    一道题
    jquery插件 展示信息
    冒泡排序和快速排序
    字体背景
  • 原文地址:https://www.cnblogs.com/sntetwt/p/5356808.html
Copyright © 2011-2022 走看看