Session、Redis、MemoryCache
public void ConfigureServices(IServiceCollection services)
{
//如何處理session
services.AddSession();
//memoryCache
services.AddMemoryCache(); //啟用RedisCache、session會自動保存到redis中 services.AddDistributedRedisCache(options => { options.Configuration = "127.0.0.1:6379"; options.InstanceName = "RedisDistributedCache"; }); //....... } public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { //啟用session app.UseSession(); app.UseRouting(); //...... }
Autofac依賴注入
//注冊autofac模塊
public class Startup
{
public void ConfigureContainer(ContainerBuilder containerBuilder) { containerBuilder.RegisterModule<AutofacModule>(); } } public class AutofacModule : Autofac.Module { protected override void Load(ContainerBuilder containerBuilder) { containerBuilder.Register(c => new CustomAutofacAop());//aop注冊 containerBuilder.RegisterType<A>().As<IA>().EnableInterfaceInterceptors(); } } //注入類 public class LogAop : IInterceptor { public void Intercept(IInvocation invocation) { Console.WriteLine($"befor {invocation.Method} Params:{invocation.Arguments}"); invocation.Proceed(); Console.WriteLine($"after {invocation.Method}"); } } public interface IA { void Do(); } //注入 [Intercept(typeof(LogAop))] public class A:IA { public void Do(){} }