ModelBusEnabledTextTransformation Class
To access Visual Studio ModelBus in the code of a text template, specify this class in the inherits attribute of the template directive of the template, and set the hostspecific attribute to true. In the template code, you can get the SModelBus and SComponentModel services.
Inheritance Hierarchy
System.Object
Microsoft.VisualStudio.TextTemplating.TextTransformation
Microsoft.VisualStudio.TextTemplating.VSHost.ModelingTextTransformation
Microsoft.VisualStudio.TextTemplating.Modeling.ModelBusEnabledTextTransformation
Namespace: Microsoft.VisualStudio.TextTemplating.Modeling
Assembly: Microsoft.VisualStudio.TextTemplating.Modeling.12.0 (in Microsoft.VisualStudio.TextTemplating.Modeling.12.0.dll)
Syntax
'Declaration
Public MustInherit Class ModelBusEnabledTextTransformation _
Inherits ModelingTextTransformation
public abstract class ModelBusEnabledTextTransformation : ModelingTextTransformation
public ref class ModelBusEnabledTextTransformation abstract : public ModelingTextTransformation
[<AbstractClass>]
type ModelBusEnabledTextTransformation =
class
inherit ModelingTextTransformation
end
public abstract class ModelBusEnabledTextTransformation extends ModelingTextTransformation
The ModelBusEnabledTextTransformation type exposes the following members.
Constructors
Name | Description | |
---|---|---|
ModelBusEnabledTextTransformation |
Top
Properties
Name | Description | |
---|---|---|
CurrentIndent | Gets the current indent text, which is prefixed to each line of the generated text output. (Inherited from TextTransformation.) | |
Errors | Infrastructure. Gets the error collection for the text template transformation process. (Inherited from TextTransformation.) | |
GenerationEnvironment | Gets or sets the string that the text template transformation process is using to assemble the generated text output. (Inherited from TextTransformation.) | |
ModelBus | Get the Visual Studio ModelBus service that this base class provides. | |
ServiceProvider | Return a service provider containing the Visual Studio ModelBus. Do not use the service provider from the Host. (Overrides ModelingTextTransformation.ServiceProvider.) | |
Session | (Inherited from ModelingTextTransformation.) | |
SkipValidation | If true, ValidateStore() does not run validation and returns false. Defaults to false. (Inherited from ModelingTextTransformation.) | |
Store | Gets the modeling Store. (Inherited from ModelingTextTransformation.) |
Top
Methods
Name | Description | |
---|---|---|
AddDomainModel | Add a domain model type to be loaded by the Store. Call this for each domain model before calling Initialize(). (Inherited from ModelingTextTransformation.) | |
ClearIndent | Resets the CurrentIndent to an empty string. (Inherited from TextTransformation.) | |
Dispose() | Releases all resources used by the TextTransformation. (Inherited from TextTransformation.) | |
Dispose(Boolean) | (Inherited from ModelingTextTransformation.) | |
Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.) | |
Error | Creates a new error to store information about errors that occur during the text template transformation process. (Inherited from TextTransformation.) | |
Finalize | Allows an Object to attempt to free resources and perform other cleanup operations before it is reclaimed by the garbage collector. Called by the garbage collector. (Inherited from TextTransformation.) | |
GetHashCode | Serves as the default hash function. (Inherited from Object.) | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
Initialize | Loads the models specified using AddModel() and makes the host ready to process the template. (Inherited from ModelingTextTransformation.) | |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
OnSessionChanged | Called whenever a session is provided that isn't the same as the last remembered session. Clears the static modelbus instance to prepare for a new snapshot of model files to be read. (Overrides ModelingTextTransformation.OnSessionChanged(ITextTemplatingSession, ITextTemplatingSession).) | |
PopIndent | Removes the most recently added text from CurrentIndent. (Inherited from TextTransformation.) | |
PushIndent | Adds text to CurrentIndent, which is prefixed to each line of the generated text output. (Inherited from TextTransformation.) | |
ReportError | Converts from ModelBus errors to Text Template errors. Calls this.Error or this.Warning depending on the category value. | |
ToString | Returns a string that represents the current object. (Inherited from Object.) | |
TransformText | When overridden in a derived class, generates the text output of the transformation. (Inherited from TextTransformation.) | |
ValidateStore | Validates the store with the given validation categories. Returns true if there are errors. (Inherited from ModelingTextTransformation.) | |
Warning | Creates a new warning to store information about errors that occur during the text template transformation process. (Inherited from TextTransformation.) | |
Write(String) | Appends a copy of the specified string to the generated text output. (Inherited from TextTransformation.) | |
Write(String, array<Object[]) | Appends a formatted string, which contains zero or more format specifications, to the generated text output. Each format specification is replaced by the string representation of a corresponding object argument. (Inherited from TextTransformation.) | |
WriteLine(String) | Appends a copy of the specified string and the default line terminator to the generated text output. (Inherited from TextTransformation.) | |
WriteLine(String, array<Object[]) | Appends a formatted string, which contains zero or more format specifications, and the default line terminator, to the generated text output. Each format specification is replaced by the string representation of a corresponding object argument. (Inherited from TextTransformation.) |
Top
Remarks
To use this text transformation in a template, you must set the hostspecific attribute to true in the template directive.
Examples
<#@ template debug="false" hostspecific="true" language="C#" inherits="Microsoft.VisualStudio.TextTemplating.Modeling.ModelBusEnabledTextTransformation" #>
<#@ assembly name="Microsoft.VisualStudio.TextTemplating.Modeling.11.0.dll" #>
<#@ assembly name="Microsoft.VisualStudio.Modeling.Sdk.Integration.11.0.dll" #>
<#@ import namespace="Microsoft.VisualStudio.Modeling.Integration" #>
<#@ output extension=".txt" #>
<# IModelBus modelbus = this.ServiceProvider.GetService(typeof(SModelBus)) as IModelBus;
...
#>
Thread Safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.