日期:2014-05-18  浏览次数:20921 次

C# 获得对象属性和属性值 C#利用反射遍历对象的属性和属性值

有一段时间没有写了

因为工作有点忙,没有时间去整理

实体类

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace WindowsFormsApplication1
{
    public class Contract
    {
        public string employeename { get; set; }
    }
}

?

遍历属性和属性值

 public void EachProperties()
        {
            Contract contract = new Contract { employeename = "Rikas" };
            Type type = contract.GetType();
            System.Reflection.PropertyInfo[] ps = type.GetProperties();
            foreach (PropertyInfo i in ps)
            {
                object obj = i.GetValue(contract, null);
                string name = i.Name;
            }
        }

当然还有判断属性类型的,我没有找到更好的方法判断一个累中的属性的类型是不是另一个类,如果有其他方法欢迎评论

?

public void EachProperties()
        {
            Contract contract = new Contract { employeename = "Rikas" };
            Type type = contract.GetType();
            System.Reflection.PropertyInfo[] ps = type.GetProperties();
            foreach (PropertyInfo i in ps)
            {
                if (i.PropertyType == typeof(string))//属性的类型判断
                {
                    object obj = i.GetValue(contract, null);
                    string name = i.Name;
                }
            }
        }

?

与大家分享

?

?

?

?

?

?

?

?

?

?

?

?

?

?