相关疑难解决方法(0)

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

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

.net c# vb.net attributes constructor

73
推荐指数
3
解决办法
2万
查看次数

C#属性及其用途

我对C#中的属性一点都不太了解,我已经看到它们在很多不同的方式/地方使用,但我不认为我看到其中一些的重要性.一些肯定具有重要性,因为它们提供了显着的功能,例如[Serializable].然而,其他人似乎并不那么重要,例如我的同事用来标记财产的人[DataMember].

我想我的问题是,什么是属性以及它们如何有用?有没有办法创建自己的属性,如何判断字段/方法/类/是否具有特定属性或在这些属性中设置了什么值?

c# attributes

16
推荐指数
3
解决办法
9053
查看次数

在调用方法之前处理信息的自定义属性

我已经创建了一个属性来处理一些信息,然后调用一个方法,但它没有被调用.

我想记录一些处理的值并存储在类中的静态字段中,这是我的类的其他方法调用的结果.

所以有人可以指导它.

[AttributeUsage(AttributeTargets.Method)]
internal class MyAttrib : Attribute
{
    public MyAttrib()
    {
        //This is not getting called. what am i missing
        Console.WriteLine("My Attrib called!!");
    }
}

class MyClass
{
    public MyClass()
    {
        Console.WriteLine("Constructor Created");
    }

    [MyAttrib]
    public int Opt1()
    {
        Console.WriteLine("Op1 Performed");
        return 0;
    }
Run Code Online (Sandbox Code Playgroud)

}

static void Main(string[] args)
{
        MyClass cla = new MyClass();
        cla.Opt1();
        cla.Opt2();
        Console.ReadLine();
}
Run Code Online (Sandbox Code Playgroud)

.net c# attributes

3
推荐指数
1
解决办法
5101
查看次数

标签 统计

attributes ×3

c# ×3

.net ×2

constructor ×1

vb.net ×1