gpt4 book ai didi

c# - 自定义属性的构造函数何时运行?

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

什么时候运行?它是针对我应用它的每个对象运行,还是只运行一次?它能做任何事情,还是它的行动受到限制?

最佳答案

构造函数什么时候运行?试用示例:

class Program
{
static void Main(string[] args)
{
Console.WriteLine("Creating MyClass instance");
MyClass mc = new MyClass();
Console.WriteLine("Setting value in MyClass instance");
mc.Value = 1;
Console.WriteLine("Getting attributes for MyClass type");
object[] attributes = typeof(MyClass).GetCustomAttributes(true);
}

}

[AttributeUsage(AttributeTargets.All)]
public class MyAttribute : Attribute
{
public MyAttribute()
{
Console.WriteLine("Running constructor");
}
}

[MyAttribute]
class MyClass
{
public int Value { get; set; }
}

输出是什么?

Creating MyClass instance
Setting value in MyClass instance
Getting attributes for MyClass type
Running constructor

因此,当我们开始检查属性时,属性构造函数就会运行。请注意,属性是从类型中获取的,而不是从类型的实例中获取的。

关于c# - 自定义属性的构造函数何时运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1168535/

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