Partager via


ITextTemplatingEngineHost.LogErrors, méthode

Reçoit une collection d'erreurs et d'avertissements du moteur de transformation.

Espace de noms :  Microsoft.VisualStudio.TextTemplating
Assembly :  Microsoft.VisualStudio.TextTemplating.Interfaces.10.0 (dans Microsoft.VisualStudio.TextTemplating.Interfaces.10.0.dll)

Syntaxe

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

Paramètres

Notes

Le moteur appelle cette méthode lorsqu'il termine le traitement du modèle de texte et qu'il transmet les erreurs qui se sont produites à l'hôte.L'hôte peut décider de la manière de les afficher.Par exemple, l'hôte peut afficher les erreurs dans l'interface utilisateur ou les écrire dans un fichier.

Exemples

Vous pouvez appeler cette méthode à partir d'un modèle de texte.Vous devez définir 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.
#>

L'exemple de code suivant montre une implémentation possible pour un hôte personnalisé.Dans cet exemple, les erreurs sont stockées dans une propriété.Le programme qui instancie cet hôte personnalisé accèdera à la propriété et écrira les erreurs dans le Console.Cet exemple de code est extrait d'un exemple plus développé.Pour obtenir un exemple complet, consultez Procédure pas à pas : création d'un hôte de modèle de texte personnalisé.

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

L'exemple de code suivant montre une autre implémentation possible pour un hôte personnalisé.Dans cet exemple, les erreurs sont écrites immédiatement dans 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

Sécurité .NET Framework

Voir aussi

Référence

ITextTemplatingEngineHost Interface

Microsoft.VisualStudio.TextTemplating, espace de noms

CompilerErrorCollection

Autres ressources

Procédure pas à pas : création d'un hôte de modèle de texte personnalisé