C#获取实体类属性名和值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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;
} 

 

以上是关于C#获取实体类属性名和值的主要内容,如果未能解决你的问题,请参考以下文章

java中遍历实体类,获取属性名和属性值

java 使用反射获取属性名,和值

java 使用反射获取属性名,和值

java反射获取属性值

java 遍历 类属性的属性值

JPA 命名查询与 group by 参数名和值