将 STextTemplating 服务强制转换为此接口,以获取对文本模板化服务的组件的访问权。 使用此接口代替高级方案的 ITextTemplating。
此 API 不兼容 CLS。
命名空间: Microsoft.VisualStudio.TextTemplating.VSHost
程序集: Microsoft.VisualStudio.TextTemplating.Interfaces.10.0(在 Microsoft.VisualStudio.TextTemplating.Interfaces.10.0.dll 中)
语法
声明
<CLSCompliantAttribute(False)> _
Public Interface ITextTemplatingComponents
[CLSCompliantAttribute(false)]
public interface ITextTemplatingComponents
[CLSCompliantAttribute(false)]
public interface class ITextTemplatingComponents
[<CLSCompliantAttribute(false)>]
type ITextTemplatingComponents = interface end
public interface ITextTemplatingComponents
ITextTemplatingComponents 类型公开以下成员。
属性
名称 | 说明 | |
---|---|---|
![]() |
Callback | 获取或设置主机使用的错误报告和文件扩展回调。 |
![]() |
Engine | 获取服务器使用的文本模板化引擎。 |
![]() |
Hierarchy | 获取或设置用于帮助解决项目引用的层次结构。 |
![]() |
Host | 获取单一实例 VS 主机 |
![]() |
InputFile | 获取或设置模板文件名,也就是报告错误时的主机引用。可以为空。 |
页首
示例
using Microsoft.VisualStudio.TextTemplating;
using Microsoft.VisualStudio.TextTemplating.VSHost;
...
// Get the main Visual Studio text templating service.
// Notice that we cast to ITextTemplatingComponents instead of ITextTemplating:
ITextTemplatingComponents ttc = serviceProvider.GetService(typeof(STextTemplating)) as ITextTemplatingComponents;
// Create my own templating engine instance:
Engine engine = new Engine();
// Set processing parameters:
ttc.InputFile = "myTemplateFile";
// Process the result using the main VS host:
string result = engine.ProcessTemplate(myTemplateContent, ttc.Host);
// Any errors in myTemplateContent will appear in the VS error window.
// Any error reports will use the filename "myTemplateFile".