【发布时间】:2016-04-05 07:01:15
【问题描述】:
我正在使用反射从类中获取所有属性,如下所示:
var props = item.GetType().GetProperties(BindingFlags.Public | BindingFlags.Instance); // todo: cache & filter not-needed props)
var itemStr = string.Join(", ",
props.Select(p => p.GetValue(item, null)?.ToString())
.ToArray());
item 是对象类型 Person 定义如下:
public sealed class Person : KnowYourCustomerBase
{
[DataMember]
public string Surname { get; set; }
[DataMember]
public string FirstName { get; set; }
[DataMember]
public string MiddleName { get; set; }
[DataMember]
public string Address4 { get; set; }
[DataMember]
public string DateOfBirth { get; set; }
[DataMember]
public string NationalID { get; set; }
[DataMember]
public string Gender { get; set; }
}
如何编辑获取所有属性的代码行并返回它们,例如除 NationalID 之外的所有属性?
【问题讨论】:
标签: c# reflection properties