【发布时间】:2015-11-04 16:01:46
【问题描述】:
我有一个Dto 类型的对象:
public class ClassA
{
[DataMember(Order = 10)]
public string Code { get; set; }
[DataMember(Order = 20)]
public string Symbology { get; set; }
[DataMember(Order = 30)]
public string Category { get; set; }
public string NonMemberPropertyA { get; set; }
}
我有兴趣获得所有DataMember 装饰属性:
var propertyInfos = type.GetProperties().Where(p => Attribute.IsDefined(p, typeof (DataMemberAttribute)));
现在我需要根据DataMember 属性的Orderproperty 对propertyInfos 进行排序。因为有些可能出现故障。
所以我尝试添加:
.OrderBy(p => ((DataFormat)Attribute.GetCustomAttribute(p, typeof (DataFormat))).Order);
但我得到 “无法从使用情况推断” 错误。
【问题讨论】:
标签: c# linq properties attributes