您的位置:首页 > 职场人生

【.Net码农】C#获取实体类属性名和值 | 遍历类对象

2016-10-22 08:56 330 查看
http://www.cnblogs.com/Byrd/archive/2012/08/21/2649518.html


C#获取实体类属性名和值 | 遍历类对象

遍历获得一个实体类的所有属性名,以及该类的所有属性的值
//先定义一个类:

public class User

{

  public string name { get; set; }

  public string gender { get; set; }

  public string age { get; set; }

}

//实例化类,并给实列化对像的属性赋值:

User u = new User();

u.name = "ahbool";

u.gender = "男";

//输出此类的所有属性名和属性对应的值

Response.Write(getProperties(u));

//输出结果为: name:ahbool,gender:男,age:,

//遍历获取类的属性及属性的值:

public string getProperties<T>(T t)

{

  string tStr = string.Empty;

  if (t == null)

  {

    return tStr;

  }

  System.Reflection.PropertyInfo[] properties = t.GetType().GetProperties(System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.Public);

  if (properties.Length <= 0)

  {

    return tStr;

  }

  foreach (System.Reflection.PropertyInfo item in properties)

  {

    string name = item.Name;

    object value = item.GetValue(t, null);

    if (item.PropertyType.IsValueType || item.PropertyType.Name.StartsWith("String"))

    {

      tStr += string.Format("{0}:{1},", name, value);

    }

    else

    {

      getProperties(value);

    }

  }

  return tStr;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐