gpt4 book ai didi

c# - "Display Name"使用 c# 的类的数据注释

转载 作者:太空狗 更新时间:2023-10-29 22:14:01 25 4
gpt4 key购买 nike

我有一个类,在属性中设置了 [Display(Name ="name")],在顶部设置了 [Table("tableName"]类。

现在我正在使用反射来获取此类的一些信息,我想知道是否可以通过某种方式将 [Display(Name ="name")] 添加到类本身。

会是这样的

[Table("MyObjectTable")]
[Display(Name ="My Class Name")] <-------------- New Annotation
public class MyObject
{
[Required]
public int Id { get; set; }

[Display(Name="My Property Name")]
public string PropertyName{ get; set; }
}

最佳答案

基于那篇文章,我在此处引用了一个完整示例

声明自定义属性

[System.AttributeUsage(System.AttributeTargets.Class)]
public class Display : System.Attribute
{
private string _name;

public Display(string name)
{
_name = name;
}

public string GetName()
{
return _name;
}
}

使用示例

[Display("My Class Name")]
public class MyClass
{
// ...
}

读取属性示例

public static string GetDisplayAttributeValue()
{
System.Attribute[] attrs =
System.Attribute.GetCustomAttributes(typeof(MyClass));

foreach (System.Attribute attr in attrs)
{
var displayAttribute as Display;
if (displayAttribute == null)
continue;
return displayAttribute.GetName();
}

// throw not found exception or just return string.Empty
}

关于c# - "Display Name"使用 c# 的类的数据注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17825974/

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