ITextTemplatingEngineHost.LogErrors 方法
接收来自转换引擎的错误和警告集合。
命名空间: Microsoft.VisualStudio.TextTemplating
程序集: Microsoft.VisualStudio.TextTemplating.Interfaces.10.0(在 Microsoft.VisualStudio.TextTemplating.Interfaces.10.0.dll 中)
语法
声明
Sub LogErrors ( _
errors As CompilerErrorCollection _
)
void LogErrors(
CompilerErrorCollection errors
)
void LogErrors(
CompilerErrorCollection^ errors
)
abstract LogErrors :
errors:CompilerErrorCollection -> unit
function LogErrors(
errors : CompilerErrorCollection
)
参数
- errors
类型:System.CodeDom.Compiler.CompilerErrorCollection
从引擎传递到主机的 CompilerErrorCollection。
备注
当引擎完成文本模板的处理并且将发生的任何错误传递到主机时,引擎会调用此方法。 主机可以决定如何显示它们。 例如,宿主可以将错误显示在用户界面中,也可以将错误写入文件。
示例
可从文本模板调用此方法。 必须设置 hostspecific="true"。
<#@ template hostspecific="true" language="C#" #>
<#@ output extension=".txt" #>
<#@ import namespace="System.CodeDom.Compiler" #>
<#
string message = "test message";
this.Host.LogErrors(new CompilerErrorCollection()
{ new CompilerError(
this.Host.TemplateFile, // Identify the source of the error.
0, 0, "0", // Line, column, error ID.
message) }); // Message displayed in error window.
#>
下面的代码示例演示了自定义主机的可能实现。 在此示例中,错误存储在属性中。 实例化此自定义主机的程序将访问此属性,将错误写入到 Console。 此代码示例摘自一个更大的示例。 有关完整的示例,请参见演练:创建自定义文本模板宿主。
private CompilerErrorCollection errorsValue;
public void LogErrors(CompilerErrorCollection errors)
{
errorsValue = errors;
}
Private errorsValue As CompilerErrorCollection
Public Sub LogErrors(ByVal errors As System.CodeDom.Compiler.CompilerErrorCollection) Implements Microsoft.VisualStudio.TextTemplating.ITextTemplatingEngineHost.LogErrors
errorsValue = errors
End Sub
下面的代码示例演示了自定义主机的另一个可能的实现。 在本示例中,错误立即写入到 Console。
public void LogErrors(CompilerErrorCollection errors)
{
foreach (CompilerError error in errors)
{
Console.WriteLine(error.ToString());
}
}
Public Sub LogErrors(ByVal errors As System.CodeDom.Compiler.CompilerErrorCollection) Implements Microsoft.VisualStudio.TextTemplating.ITextTemplatingEngineHost.LogErrors
Dim e As CompilerError
For Each e In errors
Console.WriteLine(e.ToString())
Next
End Sub
.NET Framework 安全性
- 对直接调用方的完全信任。此成员不能由部分信任的代码使用。有关更多信息,请参见通过部分受信任的代码使用库。
请参见
参考
Microsoft.VisualStudio.TextTemplating 命名空间