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 命名空間