Classe ProvideCodeGeneratorExtensionAttribute

Aplica esse atributo para uma classe de pacote de um pacote que fornece um gerador de código para uma extensão de arquivo específico.

Esta API não compatível com CLS. 

Hierarquia de herança

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

Namespace:  Microsoft.VisualStudio.TextTemplating.VSHost
Assembly:  Microsoft.VisualStudio.TextTemplating.VSHost.10.0 (em Microsoft.VisualStudio.TextTemplating.VSHost.10.0.dll)

Sintaxe

'Declaração
<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

O tipo ProvideCodeGeneratorExtensionAttribute expõe os membros a seguir.

Construtores

  Nome Descrição
Método público ProvideCodeGeneratorExtensionAttribute Aplica esse atributo para uma classe de pacote de um pacote que fornece um gerador de código para uma extensão de arquivo específico.

Início

Propriedades

  Nome Descrição
Propriedade pública Extension A extensão de ligar para o gerador de nomeado
Propriedade pública Name O nome do gerador de adicionar uma extensão para
Propriedade pública ProjectSystem O sistema de projeto, o gerador de código é registrado com
Propriedade pública ProjectSystemPackage O pacote que o gerador de código é registrado com o sistema do projeto de implementação
Propriedade pública TypeId (Herdado de RegistrationAttribute.)

Início

Métodos

  Nome Descrição
Método público Equals Infraestrutura. Returns a value that indicates whether this instance is equal to a specified object. (Herdado de Attribute.)
Método protegido Finalize Permite que um objeto tentar liberar recursos e executar outras operações de limpeza antes que ele é recuperado pela coleta de lixo. (Herdado de Object.)
Método público GetHashCode Retorna o código hash para essa instância. (Herdado de Attribute.)
Método protegido GetPackageRegKeyPath (Herdado de RegistrationAttribute.)
Método público GetType Obtém o Type da instância atual. (Herdado de Object.)
Método público IsDefaultAttribute Quando substituído em uma classe derivada, indica se o valor desta instância é o valor padrão para a classe derivada. (Herdado de Attribute.)
Método público Match Quando substituído em uma classe derivada, retorna um valor que indica se esta instância é igual a um objeto especificado. (Herdado de Attribute.)
Método protegido MemberwiseClone Cria uma cópia superficial do atual Object. (Herdado de Object.)
Método público Register Chamado quando o usuário instala a extensão do gerador de código.Normalmente deve incluir as chaves do registro. (Substitui RegistrationAttribute.Register(RegistrationAttribute.RegistrationContext).)
Método público ToString Retorna um string que representa o objeto atual. (Herdado de Object.)
Método público Unregister Chamado quando o usuário desinstala o pacote.Geralmente, deve excluir as chaves de registro criadas pelo permite. (Substitui RegistrationAttribute.Unregister(RegistrationAttribute.RegistrationContext).)

Início

Campos

  Nome Descrição
Campo públicoMembro estático AspNetProjectSystemGuid Projeto real GUID (em oposição a Guid do encapsulamento) para o ASP.NET
Campo públicoMembro estático CSharpProjectSystemGuid Projeto real GUID (em oposição a Guid do encapsulamento) para CSharp
Campo públicoMembro estático VisualBasicProjectSystemGuid Projeto real GUID (em oposição a Guid do encapsulamento) para Visual Basic

Início

Implementações explícitas da interface

  Nome Descrição
Implementação explícita da interfaceMétodo particular _Attribute.GetIDsOfNames Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de despacho. (Herdado de Attribute.)
Implementação explícita da interfaceMétodo particular _Attribute.GetTypeInfo Recupera as informações de tipo para um objeto, que pode ser usado para obter as informações de tipo para uma interface. (Herdado de Attribute.)
Implementação explícita da interfaceMétodo particular _Attribute.GetTypeInfoCount Recupera o número de interfaces de informações de tipo que um objeto fornece (0 ou 1). (Herdado de Attribute.)
Implementação explícita da interfaceMétodo particular _Attribute.Invoke Fornece acesso a propriedades e métodos expostos por um objeto. (Herdado de Attribute.)

Início

Comentários

Deve ser aplicado à classe do pacote, não o gerador, além de para o atributo ProvideCodeGenerator. Este atributo define duas coisas:

  • Aplicativo de padrão do gerador especificado para arquivos com a extensão fornecida

  • Funcionamento correto com o ASP.Sistema de projeto de rede que requer as extensões de arquivo a ser registrado

Acesso thread-safe

Quaisquer membros static (Shared no Visual Basic) públicos deste tipo são thread-safe. Não há garantia de que qualquer membro de instância seja thread-safe.

Consulte também

Referência

Namespace Microsoft.VisualStudio.TextTemplating.VSHost