カスタム属性が見えるモノ
最近知ったショックなこと。
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Sample { [AttributeUsage(AttributeTargets.Class)] class MyAttribute : Attribute { public string Name { private set; get; } public MyAttribute (string name) { Name = name; } } // _nameが参照できる!? [My(_name)] class Program { private const string _name = "mei"; static void Main (string[] args) { } } }
C#が登場してからずっと使ってきているのに、カスタム属性がクラス修飾なしでフィールドにアクセス出来ることを知りませんでした。(^^;