Visual Basic におけるカスタム属性
更新 : 2007 年 11 月
カスタム属性は、プログラム要素に関する追加情報を提供するユーザー定義の属性です。たとえば、プロシージャを実行するために呼び出し元で必要なアクセス許可を指定する、カスタム セキュリティ属性を定義できます。
カスタム属性は、System.Attribute クラスに基づく属性クラスで定義します。属性クラス自身は、AttributeUsageAttribute と呼ばれる属性を使用して、属性の使用方法に関する情報を提供します。Inherited = True を指定すると、属性が派生クラスにも反映されることを示します。AllowMultiple プロパティを True に設定すると、属性の 1 つ以上のインスタンスを 1 つのプログラム要素に適用できます。AttributeTargets 列挙型を使用すると、属性を適用できるプログラム要素の種類を定義できます。
次のコードの AttributeUsageAttribute 属性は、属性が任意の型の項目に適用され、継承が有効で、属性は一度だけ適用されることを示します。
<AttributeUsage(AttributeTargets.All, Inherited:=True, AllowMultiple:=False)> _
Class TestAttribute1
Inherits Attribute
End Class
Or 演算子を使用すると、AttributeTargets 列挙型の複数の項目を組み合わせることができます。次に例を示します。
<AttributeUsage(AttributeTargets.Class Or AttributeTargets.Method)> _
Class TestAttribute2
Inherits Attribute
End Class
このセクションの内容
方法 : 独自の属性を定義する
属性クラスを使用して独自の属性を作成する方法を説明します。方法 : カスタム属性を取得する
GetCustomAttribute または GetCustomAttributes を使用してカスタム属性を取得する方法を示します。カスタム属性の使用例
クラスにだけ適用可能なカスタム属性を定義するコード例を示し、新しい属性を使用する方法を説明します。
関連するセクション
Visual Basic と .NET Framework
.NET Framework における Visual Basic の役割を記述します。Visual Basic におけるオブジェクト指向プログラミング
オブジェクト指向プログラミング、およびその使用方法について説明します。メタデータと自己言及的なコンポーネント
属性を含む、Visual Studio で使用されるメタデータの種類について説明します。