情况是这样,
我有一个webapi 项目用autofac
部署iis , 刚部署的时候接口调用是正常的,但是过了 10 20 几分钟后,就提示
<Message>出现错误。</Message> <ExceptionMessage> 尝试创建“SignInAccountController”类型的控制器时出错。请确保控制器具有无参数公共构造函数。 </ExceptionMessage> <ExceptionType>System.InvalidOperationException</ExceptionType> <StackTrace> 在 System.Web.Http.Dispatcher.DefaultHttpControllerActivator.Create(HttpRequestMessage request, HttpControllerDescriptor controllerDescriptor, Type controllerType) 在 System.Web.Http.Controllers.HttpControllerDescriptor.CreateController(HttpRequestMessage request) 在 System.Web.Http.Dispatcher.HttpControllerDispatcher.<SendAsync>d__1.MoveNext() </StackTrace>
重新发布后又可以了。。
不知道大家有没有遇到过,帮忙解答下。
在global中注册的依赖关系?
对的。
@dragon-L: 你的这个错误哪里显示是跟AutoFac有关系的?
@~扎克伯格:
<InnerException> <Message>出现错误。</Message> <ExceptionMessage> None of the constructors found with 'Autofac.Core.Activators.Reflection.DefaultConstructorFinder' on type 'Surevy.Domain.Services.AccountService' can be invoked with the available services and parameters: Cannot resolve parameter 'Surevy.Domain.IRepository.IAccountRepository accountRepository' of constructor 'Void .ctor(Surevy.Domain.IRepository.IAccountRepository)'. </ExceptionMessage> <ExceptionType>Autofac.Core.DependencyResolutionException</ExceptionType> <StackTrace> 在 Autofac.Core.Activators.Reflection.ReflectionActivator.ActivateInstance(IComponentContext context, IEnumerable`1 parameters) 在 Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters) </StackTrace> </InnerException>
@dragon.net: 哥,你的问题解决了吗,我也遇到同样的问题,能否分享一下解决方法,谢谢
哥,你的问题解决了吗,我也遇到同样的问题,能否分享一下解决方法,谢谢