Autofac Exception Summary Autofac异常汇总

2021-10-20 15:42:51.740 +08:00 [ERR] 
System.ObjectDisposedException: Instances cannot be resolved and nested lifetimes cannot be created from this LifetimeScope as it (or one of its parent scopes) has already been disposed.
   at Autofac.Core.Lifetime.LifetimeScope.ResolveComponent(ResolveRequest request)
   at Autofac.ResolutionExtensions.TryResolveService(IComponentContext context, Service service, IEnumerable`1 parameters, Object& instance)
   at Autofac.ResolutionExtensions.ResolveService(IComponentContext context, Service service, IEnumerable`1 parameters)
   at Autofac.ResolutionExtensions.Resolve[TService](IComponentContext context, IEnumerable`1 parameters)

这个是asp.net mvc遇到的情况,可以在Global.asax.cs里面注入的时候,设置

 var container = builder.Build();
 DependencyResolver.SetResolver(new AutofacDependencyResolver(container));

然后在controller里面开启新线程的时候,

 var resolver = (AutofacDependencyResolver)DependencyResolver.Current;
using (var scope = resolver.ApplicationContainer.BeginLifetimeScope(MatchingScopeLifetimeTags.RequestLifetimeScopeTag))

{

var instance = scope.Resolve<ISomeInterface>();

}

 

 

2021-10-20 17:10:37.854 +08:00 [ERR] 
System.InvalidOperationException: The request lifetime scope cannot be created because the HttpContext is not available.
   at Autofac.Integration.Mvc.RequestLifetimeScopeProvider.GetLifetimeScope(Action`1 configurationAction)
   at Autofac.Integration.Mvc.AutofacDependencyResolver.GetService(Type serviceType)
   at System.Web.Mvc.DependencyResolverExtensions.GetService[TService](IDependencyResolver resolver)

 

 

2021-10-20 17:19:21.393 +08:00 [ERR] [DynamicProfileService.Insert] Error.Instances cannot be resolved and nested lifetimes cannot be created from this LifetimeScope as it (or one of its parent scopes) has already been disposed.
   at Autofac.Core.Lifetime.LifetimeScope.ResolveComponent(ResolveRequest request)
   at Autofac.ResolutionExtensions.TryResolveService(IComponentContext context, Service service, IEnumerable`1 parameters, Object& instance)
   at Autofac.ResolutionExtensions.ResolveService(IComponentContext context, Service service, IEnumerable`1 parameters)
   at Autofac.ResolutionExtensions.Resolve[TService](IComponentContext context, IEnumerable`1 parameters)

 

作者:Chuck Lu    GitHub    
posted @   ChuckLu  阅读(417)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
历史上的今天:
2018-10-20 启动vmware中的虚拟机的时候,提示Failed to lock the file
2016-10-20 筛选或者删除数据表中重复的数据
点击右上角即可分享
微信分享提示