Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A ControlBuilderInterceptor osztály lehetővé teszi a fordítási folyamat testreszabását vagy vezérlését.
Szintaxis
internal class ControlBuilderInterceptor
Figyelmeztetés
A ControlBuilderInterceptor osztály belső, és nem közvetlenül a kódban való használatra szolgál.
A Megjegyzések szakaszban leírtak szerint ennek a típusnak a megléte ellenőrizhető annak megállapításához, hogy van-e elfogófogótípus-támogatás. A Microsoft semmilyen körülmények között nem támogatja az osztály egyéb használatát éles alkalmazásokban.
Megjegyzések
A .NET-keretrendszer 2.0-s és .NET-keretrendszer 3.5-ös verziójában a 2020. augusztusi frissítésekkel bővült a fordítási folyamat testreszabására vagy szabályozására szolgáló elfogófogótípus használata. A ControlBuilderInterceptor típus meglétének ellenőrzéséhez Type.GetType() használatával állapíthatja meg, hogy ez a támogatás jelen van-e az alábbi kódban bemutatott módon.
Type type = Type.GetType("System.Web.Compilation.ControlBuilderInterceptor, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a");
Ha a visszatérési érték nem null, akkor a interceptor támogatása jelen van. Ha a visszatérési érték null, vagy ha kivételt jelez, akkor a 2020. augusztusi frissítések nem lettek telepítve, és az elfogófogó támogatása hiányzik.
Ha a interceptor támogatása jelen van, írhat és regisztrálhat egy olyan elfogótípust, amely ugyanúgy fogja kezelni a fordítási folyamatot, mint ControlBuilderInterceptor a .NET-keretrendszer későbbi verzióiban. A .NET-keretrendszer 2.0-s és .NET-keretrendszer 3.5-ös verziója esetén az elfogó típusa bármely olyan osztály lehet, amely megfelel a következő követelményeknek:
- Nyilvános, paraméter nélküli konstruktorsal rendelkezik.
-
PreControlBuilderInitésOnProcessGeneratedCodenevű nyilvános, nem statikus metódusokkal rendelkezik, amelyek aláírása és szemantikája megegyezik a .NET-keretrendszer későbbi verzióiban található PreControlBuilderInit(ControlBuilder, TemplateParser, ControlBuilder, Type, String, String, IDictionary, IDictionary) és OnProcessGeneratedCode(ControlBuilder, CodeCompileUnit, CodeTypeDeclaration, CodeTypeDeclaration, CodeMemberMethod, CodeMemberMethod, IDictionary) metódusokkal.
Regisztrálja az elfogótípust az ASP.NET alkalmazásbeállításokban (<appSettings>) található aspnet:20ControlBuilderInterceptor kulccsal. Ennek az alkalmazásbeállításnak szerepelnie kell a számítógépen vagy az alkalmazás web.config fájlban. Adja meg az elfogótípust a szerelvény által minősített típusnév használatával. Az alábbi példa bemutatja, hogyan regisztrálhat egy Fabrikam.Interceptornevű elfogógép-típust.
<configuration>
...
<appSettings>
...
<add key="aspnet:20ControlBuilderInterceptor"
value="Fabrikam.Interceptor, Fabrikam, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2b3831f2f2b744f7" />
</appSettings>
</configuration>
Egy típus szerelvény-minősített nevének lekéréséhez használja a Type.AssemblyQualifiedName tulajdonságot, ahogyan az az alábbi kódban is látható.
string assemblyQualifiedName = typeof(Fabrikam.Interceptor).AssemblyQualifiedName;
Ha a interceptor támogatása jelen van, a fordítási folyamat a fent leírt módon kommunikál a felsorolt típussal. Ha a interceptor támogatása hiányzik, a rendszer figyelmen kívül hagyja az alkalmazásbeállítást, és nincs hatása.
Követelmények
névtér: System.Web.Compilation
szerelvény: System.Web (System.Web.dll)
.NET-keretrendszer verziói: 3.5, 2.0