在提供的模型(类)中查找哪个属性具有KeyAttribute
的最佳方法是什么?
我试过DataAnnotationsModelMetadataProvider
;但ModelMetadata
不包含有关KeyAttribute
的信息。
答案 0 :(得分:0)
从未尝试过,但我认为您可以使用TypeDescriptor.GetProperties方法来获取所需的属性。根据MSDN,它使用指定的属性数组作为过滤器返回指定组件的属性集合。
检查此链接。我希望它有所帮助: http://msdn.microsoft.com/en-us/library/3x9x2kh5.aspx#Y0
答案 1 :(得分:0)
对于名为MyModel
的模型类,您可以找到具有关键属性的属性,如下所示。
var keyAttributedProps = typeof(MyModel).GetProperties()
.Where(p => p.GetCustomAttributes(typeof(KeyAttribute), true).Length == 1);