次の方法で共有


ProvideCodeGeneratorExtensionAttribute クラス

特定のファイル拡張子にコード ジェネレーターを提供するパッケージのパッケージ クラスにこの属性を適用する必要があります。

この API は、CLS に準拠していません。 

継承階層

System.Object
  System.Attribute
    Microsoft.VisualStudio.Shell.RegistrationAttribute
      Microsoft.VisualStudio.TextTemplating.VSHost.ProvideCodeGeneratorExtensionAttribute

名前空間:  Microsoft.VisualStudio.TextTemplating.VSHost
アセンブリ:  Microsoft.VisualStudio.TextTemplating.VSHost.10.0 (Microsoft.VisualStudio.TextTemplating.VSHost.10.0.dll 内)

構文

'宣言
<AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple := True, Inherited := False)> _
<CLSCompliantAttribute(False)> _
Public NotInheritable Class ProvideCodeGeneratorExtensionAttribute _
    Inherits RegistrationAttribute
[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple = true, Inherited = false)]
[CLSCompliantAttribute(false)]
public sealed class ProvideCodeGeneratorExtensionAttribute : RegistrationAttribute
[AttributeUsageAttribute(AttributeTargets::Class, AllowMultiple = true, Inherited = false)]
[CLSCompliantAttribute(false)]
public ref class ProvideCodeGeneratorExtensionAttribute sealed : public RegistrationAttribute
[<Sealed>]
[<AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple = true, Inherited = false)>]
[<CLSCompliantAttribute(false)>]
type ProvideCodeGeneratorExtensionAttribute =  
    class
        inherit RegistrationAttribute
    end
public final class ProvideCodeGeneratorExtensionAttribute extends RegistrationAttribute

ProvideCodeGeneratorExtensionAttribute 型で公開されるメンバーは以下のとおりです。

コンストラクター

  名前 説明
パブリック メソッド ProvideCodeGeneratorExtensionAttribute 特定のファイル拡張子にコード ジェネレーターを提供するパッケージのパッケージ クラスにこの属性を適用する必要があります。

このページのトップへ

プロパティ

  名前 説明
パブリック プロパティ Extension 指定されたジェネレーターをバインドする拡張子
パブリック プロパティ Name 拡張子を追加するジェネレーターの名前
パブリック プロパティ ProjectSystem このコード ジェネレーターが登録されるプロジェクト システム
パブリック プロパティ ProjectSystemPackage このコード ジェネレーターが登録されるプロジェクト システムを実装するパッケージ
パブリック プロパティ TypeId (RegistrationAttribute から継承されます。)

このページのトップへ

メソッド

  名前 説明
パブリック メソッド Equals インフラストラクチャ。 このインスタンスが、指定したオブジェクトに等しいかどうかを示す値を返します。 (Attribute から継承されます。)
プロテクト メソッド Finalize オブジェクトがガベージ コレクションにより収集される前に、そのオブジェクトがリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。)
パブリック メソッド GetHashCode 対象のインスタンスのハッシュ コードを返します。 (Attribute から継承されます。)
プロテクト メソッド GetPackageRegKeyPath (RegistrationAttribute から継承されます。)
パブリック メソッド GetType 現在のインスタンスの Type を取得します。 (Object から継承されます。)
パブリック メソッド IsDefaultAttribute 派生クラス内でオーバーライドされたときに、このインスタンスの値が派生クラスの既定値かどうかを示します。 (Attribute から継承されます。)
パブリック メソッド Match 派生クラス内でオーバーライドされたときに、指定したオブジェクトとこのインスタンスが等しいかどうかを示す値を返します。 (Attribute から継承されます。)
プロテクト メソッド MemberwiseClone 現在の Object の簡易コピーを作成します。 (Object から継承されます。)
パブリック メソッド Register コード ジェネレーター拡張機能をユーザーがインストールするときに呼び出されます。通常、レジストリにキーを追加します。 (RegistrationAttribute.Register(RegistrationAttribute.RegistrationContext) をオーバーライドします。)
パブリック メソッド ToString 現在のオブジェクトを表す文字列を返します。 (Object から継承されます。)
パブリック メソッド Unregister ユーザーがパッケージをアンインストールすると呼び出されます。通常、Register() によって作成されたレジストリ キーを削除します。 (RegistrationAttribute.Unregister(RegistrationAttribute.RegistrationContext) をオーバーライドします。)

このページのトップへ

フィールド

  名前 説明
パブリック フィールド静的メンバー AspNetProjectSystemGuid (パッケージ Guid と対照的な) ASP.Net の実際のプロジェクト GUID
パブリック フィールド静的メンバー CSharpProjectSystemGuid (パッケージ Guid と対照的な) CSharp の実際のプロジェクト GUID
パブリック フィールド静的メンバー VisualBasicProjectSystemGuid (パッケージ Guid と対照的な) Visual Basic の実際のプロジェクト GUID

このページのトップへ

明示的インターフェイスの実装

  名前 説明
明示的なインターフェイス実装プライベート メソッド _Attribute.GetIDsOfNames 名前のセットを対応するディスパッチ識別子のセットにマッピングします。 (Attribute から継承されます。)
明示的なインターフェイス実装プライベート メソッド _Attribute.GetTypeInfo オブジェクトの型情報を取得します。この情報はインターフェイスの型情報の取得に使用できます。 (Attribute から継承されます。)
明示的なインターフェイス実装プライベート メソッド _Attribute.GetTypeInfoCount オブジェクトが提供する型情報インターフェイスの数 (0 または 1) を取得します。 (Attribute から継承されます。)
明示的なインターフェイス実装プライベート メソッド _Attribute.Invoke オブジェクトによって公開されたプロパティおよびメソッドへのアクセスを提供します。 (Attribute から継承されます。)

このページのトップへ

解説

ProvideCodeGenerator 属性に加え、ジェネレーターではなく、パッケージ クラスに適用される必要があります。 この属性は次の 2 つのことを設定します。

  • 指定された拡張子を持つファイルに指定されたジェネレーターの既定のアプリケーション

  • ファイル拡張子の登録を要求する ASP.Net プロジェクト システムとの正常な連動

スレッド セーフ

この型のすべてのパブリック static (Visual Basic では Shared) メンバーは、スレッド セーフです。 インスタンス メンバーの場合は、スレッド セーフであるとは限りません。

参照

参照

Microsoft.VisualStudio.TextTemplating.VSHost 名前空間