Classe ProvideCodeGeneratorAttribute
Aplica este atributo à classe de pacote em uma extensão de Visual Studio que fornece uma ferramenta personalizada.
Esta API não compatível com CLS.
Hierarquia de herança
System.Object
System.Attribute
Microsoft.VisualStudio.Shell.RegistrationAttribute
Microsoft.VisualStudio.TextTemplating.VSHost.ProvideCodeGeneratorAttribute
Namespace: Microsoft.VisualStudio.TextTemplating.VSHost
Assembly: Microsoft.VisualStudio.TextTemplating.VSHost.11.0 (em Microsoft.VisualStudio.TextTemplating.VSHost.11.0.dll)
Sintaxe
'Declaração
<CLSCompliantAttribute(False)> _
<AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple := True, Inherited := False)> _
Public NotInheritable Class ProvideCodeGeneratorAttribute _
Inherits RegistrationAttribute
[CLSCompliantAttribute(false)]
[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple = true, Inherited = false)]
public sealed class ProvideCodeGeneratorAttribute : RegistrationAttribute
[CLSCompliantAttribute(false)]
[AttributeUsageAttribute(AttributeTargets::Class, AllowMultiple = true, Inherited = false)]
public ref class ProvideCodeGeneratorAttribute sealed : public RegistrationAttribute
[<Sealed>]
[<CLSCompliantAttribute(false)>]
[<AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple = true, Inherited = false)>]
type ProvideCodeGeneratorAttribute =
class
inherit RegistrationAttribute
end
public final class ProvideCodeGeneratorAttribute extends RegistrationAttribute
O tipo ProvideCodeGeneratorAttribute expõe os membros a seguir.
Construtores
Nome | Descrição | |
---|---|---|
ProvideCodeGeneratorAttribute |
Superior
Propriedades
Nome | Descrição | |
---|---|---|
Description | Uma descrição humana legível Esse gerador | |
GeneratesDesignTimeSource | Se verdadeiro, este gerador de código fornece o código-fonte de tempo de design | |
Name | O nome desse gerador.Para aplicar esse gerador em um arquivo no Solution Explorer, defina sua Ferramenta personalizada propriedade para esse nome. | |
ProjectSystem | O sistema de projeto com o qual este gerador de código está registrado. | |
RegisterCodeBase | Se verdadeiro, o gerador é registrado usando uma base de código - ou seja, um local de arquivo do assembly específico.Se for false, o assembly está no GAC. | |
Type | O tipo que implementa o gerador de código | |
TypeId | (Herdado de RegistrationAttribute.) |
Superior
Métodos
Nome | Descrição | |
---|---|---|
Equals | Infraestrutura. Retorna um valor que indica se esta instância é igual a um objeto especificado. (Herdado de Attribute.) | |
GetHashCode | Retorna o código hash para essa instância. (Herdado de Attribute.) | |
GetType | Obtém Type da instância atual. (Herdado de Object.) | |
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.) | |
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.) | |
Register | (Substitui RegistrationAttribute.Register(RegistrationAttribute.RegistrationContext).) | |
ToString | Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object.) | |
Unregister | (Substitui RegistrationAttribute.Unregister(RegistrationAttribute.RegistrationContext).) |
Superior
Campos
Nome | Descrição | |
---|---|---|
AspNetProjectGuid | GUID do ASP.NET pacote de sistema do projeto | |
CSharpProjectGuid | GUID do pacote do sistema do projeto C# | |
VisualBasicProjectGuid | GUID do pacote do sistema do projeto Visual Basic |
Superior
Implementações explícitas da interface
Nome | Descrição | |
---|---|---|
_Attribute.GetIDsOfNames | Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de despacho. (Herdado de Attribute.) | |
_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.) | |
_Attribute.GetTypeInfoCount | Recupera o número de interfaces de informações de tipo que um objeto fornece (0 ou 1). (Herdado de Attribute.) | |
_Attribute.Invoke | Fornece acesso a propriedades e métodos expostos por um objeto. (Herdado de Attribute.) |
Superior
Comentários
Este atributo registra sua extensão de Visual Studio como uma ferramenta personalizada.Quando um usuário tiver instalado uma extensão que tem esse atributo, eles podem usá-lo para gerar arquivos usando o Ferramenta personalizado para executar comando no Solution Explorer.
Este atributo executa automaticamente a tarefa de registro descrita no Registrando os geradores de arquivo único.
Aplica o atributo à classe de pacote (e não a classe do gerador).
See also ProvideCodeGeneratorExtensionAttribute.
Exemplos
[ProvideCodeGenerator(typeof(MyGenerator), "MyCustomTool", "My custom tool", true, ProjectSystem = ProvideCodeGeneratorAttribute.CSharpProjectGuid)]
internal sealed partial class MyPackage : Microsoft.VisualStudio.Shell
.Package
{ ... }
internal class MyGenerator : Microsoft.VisualStudio.Shell.Interop.IVsSingleFileGenerator
{ ... }
Acesso thread-safe
Quaisquer membros estático (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.