atrybut c # nad głównym

Ktoś zadał mi pytanie, jak możemy drukować

line no 1
line no 2
line no 3

Bez zmiany głównej metody, która brzmi

static void Main(string[] args)
{
    Console.WriteLine("line no 2");
}

Teraz jednym podejściem było posiadanie wielu punktów wejścia dla aplikacji konsoli. Próbowałem jednak innego podejścia, które wygląda następująco:

class Program
{
    [Some]
    static void Main(string[] args)
    {
        Console.WriteLine("line no 2");
    }
}
class SomeAttribute : Attribute
{
    public SomeAttribute()
    {
        Console.WriteLine("line no 1");
    }
    ~SomeAttribute()
    {
        Console.WriteLine("line no 3");
    }
}

Kiedy stosuję punkt przerwania na każdym z nichWriteLine, Widzę, że podejście działa, jednak to samo nie jest odzwierciedlone na konsoli.

Po prostu ciekawy.

questionAnswers(3)

yourAnswerToTheQuestion