Condividi tramite


Metodo ITextTemplatingEngineHost.LogErrors

Riceve una raccolta di errori e avvisi dal motore di trasformazione.

Spazio dei nomi:  Microsoft.VisualStudio.TextTemplating
Assembly:  Microsoft.VisualStudio.TextTemplating.Interfaces.10.0 (in Microsoft.VisualStudio.TextTemplating.Interfaces.10.0.dll)

Sintassi

'Dichiarazione
Sub LogErrors ( _
    errors As CompilerErrorCollection _
)
void LogErrors(
    CompilerErrorCollection errors
)
void LogErrors(
    CompilerErrorCollection^ errors
)
abstract LogErrors : 
        errors:CompilerErrorCollection -> unit 
function LogErrors(
    errors : CompilerErrorCollection
)

Parametri

Note

Il motore chiama questo metodo quando viene completata l'elaborazione di un modello di testo e passa tutti gli errori che si sono verificati all'host.L'host può decidere come visualizzare.Ad esempio, l'host può visualizzare gli errori nell'interfaccia utente o può scriverli in un file.

Esempi

È possibile chiamare questo metodo da un modello di testo.È necessario impostare 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.
#>

Nell'esempio di codice seguente viene illustrata un'implementazione anche un host personalizzato.In questo esempio, gli errori vengono memorizzati in una proprietà.Il programma di cui creare un'istanza questo host personalizzato utilizzerà la proprietà e scrive gli errori a Console.Questo esempio di codice fa parte di un esempio più esaustivo.per l'esempio completo, vedere Procedura dettagliata: creazione di un host del modello di testo personalizzato.

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

Nell'esempio di codice riportato di seguito un'altra implementazione anche un host personalizzato.In questo esempio, gli errori vengono scritti sul Console immediatamente.

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

Sicurezza di .NET Framework

Vedere anche

Riferimenti

ITextTemplatingEngineHost Interfaccia

Spazio dei nomi Microsoft.VisualStudio.TextTemplating

CompilerErrorCollection

Altre risorse

Procedura dettagliata: creazione di un host del modello di testo personalizzato