Compartir a través de


Clase ControlBuilderInterceptor

La clase ControlBuilderInterceptor permite personalizar o controlar el proceso de compilación.

Sintaxis

internal class ControlBuilderInterceptor

Advertencia

La clase ControlBuilderInterceptor es interna y no está pensada para usarse directamente en el código.

Como se describe en la sección Comentarios, se puede comprobar la existencia de este tipo para determinar si la compatibilidad con el tipo interceptor está presente. Microsoft no admite ningún otro uso de esta clase en una aplicación de producción en ninguna circunstancia.

Observaciones

En .NET Framework 2.0 y .NET Framework 3.5, el de agosto de 2020 se ha agregado compatibilidad con el uso de un tipo de interceptor para personalizar o controlar el proceso de compilación. Puede determinar si esta compatibilidad está presente mediante Type.GetType() para comprobar la existencia del tipo ControlBuilderInterceptor, como se muestra en el código siguiente.

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

Si el valor devuelto no es NULL, la compatibilidad con el interceptor está presente. Si el valor devuelto es null, o si se produce una excepción, las actualizaciones de agosto de 2020 no se han instalado y la compatibilidad con interceptor no está presente.

Si la compatibilidad con interceptores está presente, puede escribir y registrar un tipo de interceptor que interactuará con el proceso de compilación exactamente de la misma manera que ControlBuilderInterceptor hace en versiones posteriores de .NET Framework. En .NET Framework 2.0 y .NET Framework 3.5, el tipo de interceptor puede ser cualquier clase que cumpla los siguientes requisitos:

Registre el tipo de interceptor mediante la clave aspnet:20ControlBuilderInterceptor en ASP.NET configuración de la aplicación (<appSettings>). Esta configuración de aplicación debe aparecer en el equipo o la aplicación web.config archivo. Especifique el tipo de interceptor mediante su nombre de tipo calificado para ensamblados. En el ejemplo siguiente se muestra cómo registrar un tipo de interceptor denominado Fabrikam.Interceptor.

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

Para recuperar el nombre completo del ensamblado de un tipo, use la propiedad Type.AssemblyQualifiedName , como se muestra en el código siguiente.

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

Cuando la compatibilidad con el interceptor está presente, el proceso de compilación interactúa con el tipo enumerado de la manera descrita anteriormente. Cuando la compatibilidad con interceptores no está presente, se omite la configuración de la aplicación y no tiene ningún efecto.

Requisitos

Espacio de nombres: System.Web.Compilation

ensamblado de : System.Web (en System.Web.dll)

versiones de .NET Framework: 3.5, 2.0