ControlBuilderInterceptor – třída
Třída ControlBuilderInterceptor
umožňuje proces kompilace přizpůsobit nebo řídit.
Syntaxe
internal class ControlBuilderInterceptor
Upozorňující
Třída ControlBuilderInterceptor
je interní a není určená k použití přímo v kódu.
Jak je popsáno v části Poznámky, je možné zkontrolovat existenci tohoto typu a určit, zda je k dispozici podpora typu průsečíku. Společnost Microsoft nepodporuje žádné jiné použití této třídy v produkční aplikaci za jakýchkoli okolností.
Poznámky
V rozhraní .NET Framework 2.0 a .NET Framework 3.5 přidaly aktualizace ze srpna 2020 podporu použití typu průsečíku k přizpůsobení nebo řízení procesu kompilace. Pokud chcete zkontrolovat existenci ControlBuilderInterceptor
typu, můžete určit, jestli je tato podpora k dispoziciType.GetType(), jak je znázorněno v následujícím kódu.
Type type = Type.GetType("System.Web.Compilation.ControlBuilderInterceptor, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a");
Pokud je návratová hodnota nenulová, je k dispozici podpora průsečíku. Pokud je null
vrácená hodnota nebo pokud je vyvolána výjimka, aktualizace ze srpna 2020 nebyly nainstalovány a podpora průsečíku chybí.
Pokud je k dispozici podpora průsečíku, můžete napsat a zaregistrovat typ průsečíku, který bude pracovat s procesem kompilace stejným způsobem jako ControlBuilderInterceptor v novějších verzích rozhraní .NET Framework. V rozhraní .NET Framework 2.0 a .NET Framework 3.5 může být typ průsečíku libovolnou třídou, která splňuje následující požadavky:
- Má veřejný konstruktor bez parametrů.
- Má veřejné, nestatické metody pojmenované
PreControlBuilderInit
aOnProcessGeneratedCode
mají stejný podpis a sémantiku jako PreControlBuilderInit(ControlBuilder, TemplateParser, ControlBuilder, Type, String, String, IDictionary, IDictionary) metody a OnProcessGeneratedCode(ControlBuilder, CodeCompileUnit, CodeTypeDeclaration, CodeTypeDeclaration, CodeMemberMethod, CodeMemberMethod, IDictionary) metody, které existují v novějších verzích rozhraní .NET Framework.
Zaregistrujte typ průsečíku aspnet:20ControlBuilderInterceptor
pomocí klíče v nastavení aplikace ASP.NET (<appSettings>
). Toto nastavení aplikace musí být uvedené v počítači nebo souboru web.config aplikace. Zadejte typ průsečíku pomocí svého názvu typu kvalifikovaného sestavení. Následující příklad ukazuje, jak zaregistrovat typ průsečíku s názvem Fabrikam.Interceptor
.
<configuration>
...
<appSettings>
...
<add key="aspnet:20ControlBuilderInterceptor"
value="Fabrikam.Interceptor, Fabrikam, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2b3831f2f2b744f7" />
</appSettings>
</configuration>
K načtení sestavení kvalifikovaného názvu typu použijte Type.AssemblyQualifiedName vlastnost, jak je znázorněno v následujícím kódu.
string assemblyQualifiedName = typeof(Fabrikam.Interceptor).AssemblyQualifiedName;
Pokud je k dispozici podpora průsečíku, proces kompilace komunikuje s uvedeným typem způsobem popsaným výše. Pokud chybí podpora průsečíku, nastavení aplikace se ignoruje a nemá žádný vliv.
Požadavky
Obor názvů: System.Web.Compilation
Sestavení: System.Web (v System.Web.dll)
Verze rozhraní .NET Framework: 3.5, 2.0