Tento článek podrobně vysvětluje použití nahrazeného Autofacu k implementaci AOP interception v ASP.NET Core.
Aspektově orientované programování (AOP) je žhavé téma. Hlavním účelem AOP je extrahovat povrch cut-to-face v obchodním procesním procesu, který je konfrontován s určitým krokem nebo fází zpracování, aby se dosáhlo izolačního efektu nízkého propojení mezi částmi logického procesu.
Zaveďte knihovny tříd
Příkaz nuget je následující:
Autofac se používá k implementaci AOP
Nejprve vytvoříme intercept třídu s následujícím kódem:
Zde je potřeba zdědit IInterceptor a poté implementovat jeho metodu Intercept: Zachycený obsah přímo vypisujeme do ladicího okna (oficiální projekt: Prosím, provozujte odposlech podle obchodních podmínek):
Zde používám ILogger k zaznamenání operace, následovně:
Najděte služby, které chceme zachytit, TestService1 a TestService2, a děláme to dvěma způsoby.
TestService1: Zachycen rysem
TestService2: Intercept podle konfigurace
Kód je následující:
V metodě Startup editace ConfigureServices zablokujte službu TestService2 tak, že ji konfigurujete následovně:
Důležitý kód je následující:
Všimněte si, že je musíte přidat až po injekci službyEnableInterfaceInterceptorszapnout svůj interception
Kód ovladače je následující:
Spusťte projekt pomocí příkazu dotnet run, přistupte k URL a výstupní záznam konzole je následující:
Zjistili jsme, že hodnota zachycení AOP je stejná jako ta, která je vrácena na webové stránce, takže jsme dokončili zachycení AOP pomocí Autofac.
(Konec)
|