Asp.Net Core 實(shí)現(xiàn)對(duì).NET程序進(jìn)行自動(dòng)編織
ASP.NET Core 可以使用Fody來實(shí)現(xiàn)AOP,F(xiàn)ody是一個(gè).NET的插件工具,可以對(duì).NET程序進(jìn)行自動(dòng)編織。
具體實(shí)現(xiàn)步驟如下: 1. 安裝Fody和MethodDecorator.Fody.安裝的方法如下: ??
```bash ??
Install-Package Fody?
Install-Package MethodDecorator.Fody
?? ```
[ConfigureAwait(false)]
? ? public class MyLoggingAspect : Attribute, IMethodDecorator
? ? {
? ? ? ? public void Init(object instance, MethodBase method, object[] args)
? ? ? ? {
? ? ? ? ? ? Console.WriteLine($"Calling {method.Name} with {args.Length} arguments...");
? ? ? ? }
? ? ? ? public void OnEntry()
? ? ? ? {
? ? ? ? ? ? Console.WriteLine("Before method call...");
? ? ? ? }
? ? ? ? public void OnException(Exception exception)
? ? ? ? {
? ? ? ? ? ? Console.WriteLine($"An error occurred: {exception.Message}");
? ? ? ? }
? ? ? ? public void OnExit()
? ? ? ? {
? ? ? ? ? ? Console.WriteLine("Method completed successfully!");
? ? ? ? }
? ? }
?[MyLoggingAspect]
? ? ? ? public Task OnGet()
? ? ? ? {
? ? ? ? ? ? Console.WriteLine("執(zhí)行了OnGet");
? ? ? ? ? ? return Task.CompletedTask;
? ? ? ? }