我正在尝试检查属性是否已应用DataMemberAttribute(使用TypeDescriptor)
这就是我现在拥有的:
PropertyDescriptor targetProp = targetProps[i];
var has = argetProp.Attributes.Contains(
Attribute.GetCustomAttribute(typeof(DataMemberAttribute).Assembly,typeof(DataMemberAttribute)));
Run Code Online (Sandbox Code Playgroud)
问题是
Attribute.GetCustomAttribute(typeof(DataMemberAttribute).Assembly,typeof(DataMemberAttribute))
Run Code Online (Sandbox Code Playgroud)
返回null
Dar*_*rov 22
您可以使用LINQ.一系列.OfType<T>()
和.Any()
扩展方法可以很好地完成工作:
PropertyDescriptor targetProp = targetProps[i];
bool hasDataMember = targetProp.Attributes.OfType<DataMemberAttribute>().Any();
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5603 次 |
最近记录: |