gpt4 book ai didi

c# - 检查属性是否具有属性

转载 作者:IT王子 更新时间:2023-10-29 03:31:36 25 4
gpt4 key购买 nike

给定一个类中的属性,具有属性 - 确定它是否包含给定属性的最快方法是什么?例如:

    [IsNotNullable]
[IsPK]
[IsIdentity]
[SequenceNameAttribute("Id")]
public Int32 Id
{
get
{
return _Id;
}
set
{
_Id = value;
}
}

确定它具有“IsIdentity”属性的最快方法是什么?

最佳答案

没有快速的方法来检索属性。但是代码应该看起来像这样(归功于 Aaronaught ):

var t = typeof(YourClass);
var pi = t.GetProperty("Id");
var hasIsIdentity = Attribute.IsDefined(pi, typeof(IsIdentity));

如果您需要检索属性特性则

var t = typeof(YourClass);
var pi = t.GetProperty("Id");
var attr = (IsIdentity[])pi.GetCustomAttributes(typeof(IsIdentity), false);
if (attr.Length > 0) {
// Use attr[0], you'll need foreach on attr if MultiUse is true
}

关于c# - 检查属性是否具有属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2051065/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com