RequiresProvidesDirectiveProcessor – třída
Abstraktní základní třída pro směrnice procesor, který definuje a implementuje návrhového vzoru nazývá vyžaduje nebo nabízí.
Hierarchie dědičnosti
System.Object
Microsoft.VisualStudio.TextTemplating.DirectiveProcessor
Microsoft.VisualStudio.TextTemplating.RequiresProvidesDirectiveProcessor
Obor názvů: Microsoft.VisualStudio.TextTemplating
Sestavení: Microsoft.VisualStudio.TextTemplating.11.0 (v Microsoft.VisualStudio.TextTemplating.11.0.dll)
Syntaxe
'Deklarace
Public MustInherit Class RequiresProvidesDirectiveProcessor _
Inherits DirectiveProcessor
public abstract class RequiresProvidesDirectiveProcessor : DirectiveProcessor
public ref class RequiresProvidesDirectiveProcessor abstract : public DirectiveProcessor
[<AbstractClass>]
type RequiresProvidesDirectiveProcessor =
class
inherit DirectiveProcessor
end
public abstract class RequiresProvidesDirectiveProcessor extends DirectiveProcessor
Typ RequiresProvidesDirectiveProcessor zveřejňuje následující členy.
Konstruktory
Název | Popis | |
---|---|---|
![]() |
RequiresProvidesDirectiveProcessor | Při přepsání v odvozené třídě, inicializuje novou instanci RequiresProvidesDirectiveProcessor třídy. |
Nahoru
Vlastnosti
Název | Popis | |
---|---|---|
![]() |
Errors | Získá chyby, k nimž došlo při zpracování směrnic. (Zděděno z DirectiveProcessor.) |
![]() |
FriendlyName | Při přepsání v odvozené třídě, získá popisný název směrnice procesoru. |
![]() |
Host | Načte hostitele, který je přidružen k této směrnice procesoru. |
Nahoru
Metody
Název | Popis | |
---|---|---|
![]() |
Equals | Určuje, zda zadaný objekt je rovno aktuální objekt. (Zděděno z Object.) |
![]() |
Finalize | Umožňuje objekt při uvolnění prostředků a provádět jiné operace vyčištění před je zažádáno systémem uvolňování paměti. (Zděděno z Object.) |
![]() |
FinishProcessingRun | Dokončení zpracování směrnice kolo. (Přepisuje DirectiveProcessor.FinishProcessingRun().) |
![]() |
GeneratePostInitializationCode | Při přepsání v odvozené třídě, přidá kód kódem inicializace třídy vygenerované transformace.Tento kód je přidán po inicializaci základní třídy. |
![]() |
GeneratePreInitializationCode | Při přepsání v odvozené třídě, přidá kód kódem inicializace třídy vygenerované transformace.Tento kód je přidána před základní třídy je inicializován. |
![]() |
GenerateTransformCode | Při přepsání v odvozené třídě, přidá kód třídy vygenerované transformace. |
![]() |
GetClassCodeForProcessingRun | Získá kód přidat třídy vygenerované transformace. (Přepisuje DirectiveProcessor.GetClassCodeForProcessingRun().) |
![]() |
GetHashCode | Slouží jako funkci hash u určitého typu. (Zděděno z Object.) |
![]() |
GetImportsForProcessingRun | Získá-li obory názvů pro import do třídy vygenerované transformace. (Přepisuje DirectiveProcessor.GetImportsForProcessingRun().) |
![]() |
GetPostInitializationCodeForProcessingRun | Získá inicializace při inicializaci třídy vygenerované transformace, v důsledku poslední zpracování spustit kód. (Přepisuje DirectiveProcessor.GetPostInitializationCodeForProcessingRun().) |
![]() |
GetPreInitializationCodeForProcessingRun | Získá inicializace při inicializaci třídy vygenerované transformace, v důsledku poslední zpracování spustit kód. (Přepisuje DirectiveProcessor.GetPreInitializationCodeForProcessingRun().) |
![]() |
GetReferencesForProcessingRun | Získá odkazy předat kompilátoru třídy vygenerované transformace. (Přepisuje DirectiveProcessor.GetReferencesForProcessingRun().) |
![]() |
GetTemplateClassCustomAttributes | Získáte vlastní atributy na šablonu třídy. (Zděděno z DirectiveProcessor.) |
![]() |
GetType | Získá Type aktuální instance. (Zděděno z Object.) |
![]() |
Initialize | Inicializuje instanci směrnice procesoru. (Přepisuje DirectiveProcessor.Initialize(ITextTemplatingEngineHost).) |
![]() |
InitializeProvidesDictionary | V odvozené třídě přepsána, určuje poskytuje parametry pro jednotlivé směrnice. |
![]() |
InitializeRequiresDictionary | V odvozené třídě přepsána, určuje vyžaduje parametry pro jednotlivé směrnice. |
![]() |
IsDirectiveSupported | V odvozené třídě přepsána, určuje, zda směrnice procesor podporuje určené směrnicí. (Zděděno z DirectiveProcessor.) |
![]() |
MemberwiseClone | Vytvoří kopii aktuálního Object. (Zděděno z Object.) |
![]() |
PostProcessArguments | Při přepsán v odvozené třídě, umožňuje provádět jakékoli změny parametrů, které poskytují a vyžadují odvozené třídy. |
![]() |
ProcessDirective | Zpracovává jediné směrnice z textového souboru šablony. (Přepisuje DirectiveProcessor.ProcessDirective(String, IDictionary<String, String>).) |
![]() |
ProvideUniqueId | Obsahuje Identifikátor, který identifikuje volání směrnice procesoru. |
![]() |
StartProcessingRun | Spustí směrnice procesoru. (Přepisuje DirectiveProcessor.StartProcessingRun(CodeDomProvider, String, CompilerErrorCollection).) |
![]() |
ToString | Vrátí řetězec představující aktuální objekt. (Zděděno z Object.) |
Nahoru
Explicitní implementace rozhraní
Název | Popis | |
---|---|---|
![]() ![]() |
IDirectiveProcessor.Errors | (Zděděno z DirectiveProcessor.) |
![]() ![]() |
IDirectiveProcessor.RequiresProcessingRunIsHostSpecific | (Zděděno z DirectiveProcessor.) |
![]() ![]() |
IDirectiveProcessor.SetProcessingRunIsHostSpecific | (Zděděno z DirectiveProcessor.) |
Nahoru
Poznámky
Chcete-li vytvořit vlastní procesor směrnice vytvořit třídu, která dědí buď z DirectiveProcessor nebo RequiresProvidesDirectiveProcessor.
DirectiveProcessorimplementuje rozhraní, který je nutný k zachycení parametry uživatele a nabízí funkce pro třídu vygenerované transformace.RequiresProvidesDirectiveProcessorRequiresProvidesDirectiveProcessorimplementuje návrhového vzoru vyžaduje/poskytnouts pro procesor směrnice.RequiresProvidesDirectiveProcessorposkytuje další možnosti pro zachycení parametry uživatele a nabízí funkce třídy vygenerované transformace s názvy konkrétních vlastností.
Další informace naleznete v tématu Vytvoření vlastní T4 Text šablony směrnice procesorů.
Transformace motoru nejednoznačné platí pro všechny požadované RequiresProvidesDirectiveProcessor třídy.
RequiresProvidesDirectiveProcessorimplementuje stavového počítače.
Například pokud šablona textu směrnice zpracovatel tři směrnice volání, motor volá následující metody v pořadí:
StartProcessingRun
Příklady
Následující příklad demonstruje použití RequiresProvidesDirectiveProcessor.
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.VisualStudio.TextTemplating;
using System.Xml;
using System.IO;
using System.Globalization;
namespace Microsoft.Samples.VisualStudio.TextTemplating.DirectiveProcessors
{
public class DomDirectiveProcessor : RequiresProvidesDirectiveProcessor
{
// Name of the tag that this directive processor supports.
private const string DomDirectiveTag = "dom";
//Name of the parameter that must be provided for this directive processor to load an XML file
private const string XmlFileRequiredParameterName = "XmlFile";
// Default name of the property that this provider adds to the generated transform class.
private const string DomProvidedParameterName = "Dom";
// Set up the dictionary of items that this directive processor will provide.
protected override void InitializeProvidesDictionary(string directiveName, IDictionary<string, string> providesDictionary)
{
if (StringComparer.InvariantCultureIgnoreCase.Compare(directiveName, DomDirectiveTag) == 0)
{
// Populate the dictionary with defualt names.
providesDictionary[DomProvidedParameterName] = DomProvidedParameterName;
}
}
// Set up the dictionary of items that this directive processor requires to complete.
protected override void InitializeRequiresDictionary(string directiveName, IDictionary<string, string> requiresDictionary)
{
if (StringComparer.InvariantCultureIgnoreCase.Compare(directiveName, DomDirectiveTag) == 0)
{
// Initialize the dictionary with nulls for each required parameter.
requiresDictionary[XmlFileRequiredParameterName] = null;
}
}
}
}
Bezpečný přístup z více vláken
Všechny veřejné členy static (Shared v jazyce Visual Basic) tohoto typu jsou bezpečné pro přístup z více vláken. Není zaručeno, že členy instancí jsou bezpečné pro přístup z více vláken.
Viz také
Referenční dokumentace
Microsoft.VisualStudio.TextTemplating – obor názvů