Udostępnij za pośrednictwem


ControlBuilderInterceptor, klasa

Klasa ControlBuilderInterceptor umożliwia dostosowywanie lub kontrolowanie procesu kompilacji.

Składnia

internal class ControlBuilderInterceptor

Ostrzeżenie

Klasa jest wewnętrzna ControlBuilderInterceptor i nie ma być używana bezpośrednio w kodzie.

Zgodnie z opisem w sekcji Uwagi można sprawdzić istnienie tego typu, aby określić, czy obsługa typu przechwytywania jest obecna. Firma Microsoft nie obsługuje żadnego innego użycia tej klasy w aplikacji produkcyjnej w żadnym wypadku.

Uwagi

W programach .NET Framework 2.0 i .NET Framework 3.5 aktualizacje z sierpnia 2020 r. dodały obsługę używania typu przechwytywania w celu dostosowania lub sterowania procesem kompilacji. Można określić, czy ta obsługa jest obecna, sprawdzając Type.GetType() istnienie ControlBuilderInterceptor typu, jak pokazano w poniższym kodzie.

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

Jeśli wartość zwracana ma wartość inną niż null, obsługa przechwytywania jest obecna. Jeśli zwracana wartość to null, lub jeśli zostanie zgłoszony wyjątek, aktualizacje z sierpnia 2020 r. nie zostały zainstalowane, a obsługa przechwytywania jest nieobecna.

Jeśli obsługa przechwytywania jest obecna, możesz napisać i zarejestrować typ przechwytywania, który będzie współdziałał z procesem kompilacji w dokładnie taki sam sposób, ControlBuilderInterceptor jak w nowszych wersjach programu .NET Framework. W programach .NET Framework 2.0 i .NET Framework 3.5 typ przechwytywania może być dowolną klasą spełniającą następujące wymagania:

Zarejestruj typ przechwytywania przy użyciu aspnet:20ControlBuilderInterceptor klucza w ustawieniach aplikacji ASP.NET (<appSettings>). To ustawienie aplikacji musi być wymienione w pliku web.config komputera lub aplikacji. Określ typ przechwytywania przy użyciu nazwy typu kwalifikowanego przez zestaw. W poniższym przykładzie pokazano, jak zarejestrować typ przechwytywania o nazwie Fabrikam.Interceptor.

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

Aby pobrać kwalifikowaną przez zestaw nazwę typu, użyj Type.AssemblyQualifiedName właściwości , jak pokazano w poniższym kodzie.

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

Gdy obsługa przechwytywania jest obecna, proces kompilacji wchodzi w interakcję z wymienionym typem w sposób opisany powyżej. Gdy obsługa przechwytywania jest nieobecna, ustawienie aplikacji jest ignorowane i nie ma żadnego efektu.

Wymagania

Przestrzeń nazw: System.Web.Compilation

Zestaw: System.Web (w System.Web.dll)

Wersje programu .NET Framework: 3.5, 2.0