属性 (コンピューティング)
C#プログラミング言語では、属性はフィールドあるいはアセンブリ、メンバー、そして型といったコードブロックに付属するメタデータであり、Javaのアノテーションに相当する。属性はコンパイラからも、リフレクションによってプログラムからもアクセスできる。
C#では、横断的な問題や仕組みまたはプラットフォームのその他の用途に対応するために属性が使用されている例が多く見られる。このせいで、これが意図された唯一の使用目的であるという誤った印象が生まれている。属性でabstract、sealed、またはpublic等の属性を拡張できる。
メタデータとしての属性の具体的な用途は開発者に委ねられており、任意のアプリケーション、クラス、そしてメンバーに関するインスタンス固有でない幅広い情報を網羅することができる。