Partager via


Classe ControlBuilderInterceptor

La classe ControlBuilderInterceptor permet de personnaliser ou de contrôler le processus de compilation.

Syntaxe

internal class ControlBuilderInterceptor

Avertissement

La classe ControlBuilderInterceptor est interne et n’est pas destinée à être utilisée directement dans votre code.

Comme décrit dans la section Remarques, l’existence de ce type peut être vérifiée pour déterminer si le type d’intercepteur est pris en charge. Microsoft ne prend en charge aucune autre utilisation de cette classe dans une application de production, quelles que soient les circonstances.

Notes

Dans .NET Framework 2.0 et .NET Framework 3.5, les mises à jour d’août 2020 ont introduit la prise en charge de l’utilisation d’un type d’intercepteur pour personnaliser ou contrôler le processus de compilation. Vous pouvez déterminer si cette prise en charge est présente en utilisant Type.GetType() pour vérifier l’existence du type ControlBuilderInterceptor, comme illustré dans le code suivant.

Type type = Type.GetType("System.Web.Compilation.ControlBuilderInterceptor, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a");

Si la valeur renvoyée n’est pas NULL, les intercepteurs sont pris en charge. Si la valeur renvoyée est null, ou si une exception est levée, cela signifie que les mises à jour d’août 2020 n’ont pas été installées et que les intercepteurs ne sont pas pris en charge.

Si les intercepteurs sont pris en charge, vous pouvez écrire et inscrire un type d’intercepteur qui interagira avec le processus de compilation de la même façon que ControlBuilderInterceptor sur les versions ultérieures de .NET Framework. Dans .NET Framework 2.0 et .NET Framework 3.5, le type d’intercepteur peut être n’importe quelle classe qui répond aux exigences suivantes :

Inscrivez le type d’intercepteur à l’aide de la clé aspnet:20ControlBuilderInterceptor dans les paramètres de l’application ASP.NET (<appSettings>). Ce paramètre d’application doit être répertorié dans le fichier web.config de votre ordinateur ou de votre application. Spécifiez le type d’intercepteur à l’aide de son nom de type qualifié d’assembly. L’exemple suivant montre comment inscrire un type d’intercepteur nommé Fabrikam.Interceptor.

<configuration>
  ...
  <appSettings>
    ...
    <add key="aspnet:20ControlBuilderInterceptor"
         value="Fabrikam.Interceptor, Fabrikam, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2b3831f2f2b744f7" />
  </appSettings>
</configuration>

Pour récupérer le nom qualifié d’assembly d’un type, utilisez la propriété Type.AssemblyQualifiedName, comme illustré dans le code suivant.

string assemblyQualifiedName = typeof(Fabrikam.Interceptor).AssemblyQualifiedName;

Lorsque les intercepteurs sont pris en charge, le processus de compilation interagit avec le type répertorié de la manière décrite ci-dessus. Lorsque les intercepteurs ne sont pas pris en charge, le paramètre d’application est ignoré et n’a aucun effet.

Spécifications

Espace de noms : System.Web.Compilation

Assembly : System.Web (dans System.Web.dll)

Versions de .NET Framework : 3.5, 2.0