autofac依赖注入问题(MVC5/WebAPI2)

时间:2021-07-19 13:29:14
最近在学习autofac依赖注入,可在注册时出现问题。

现象:注册MVC5没问题, 同时注册WebAPI时,提示
重写成员“Autofac.Integration.WebApi.AutofacWebApiDependencyResolver.BeginScope()”时违反了继承安全性规则。重写方法的安全可访问性必须与所重写方法的安全可访问性匹配。
autofac依赖注入问题(MVC5/WebAPI2)

autofac的DLL都是通过nuget package获得。

PM> Install-Package autofac.mvc5   v3.3.0.0
PM> Install-Package autofac.webapi v3.0.0.0

autofac v3.4.0.0

Code:
DependencyResolver.SetResolver(new AutofacDependencyResolver(container));//注册MVC容器
config.DependencyResolver = new AutofacWebApiDependencyResolver(container);//注册api容器

3 个解决方案

#1


貌似autofac 有针对webapi出的dll
针对wcf也有对应的dll

我现在的项目 webapi和mvc公用一个依赖注入,也在同一个进程上
处理webapi不可以用构造函数注入外  都没有其他问题

#2


PM> install-package autofac.webapi2 (注意:您的项目中如果使用的是webapi2,此处必须为webapi2而不是webapi,否则在运行时将出现“重写成员“Autofac.Integration.WebApi.AutofacWebApiDependencyResolver.BeginScope()”时违反了继承安全性规则。重写方法的安全可访问性必须与所重写方法的安全可访问性匹配。”错误。)

http://www.cnblogs.com/daisy-popule/p/4126599.html

#3


楼主解决了没,什么问题造成的?

#1


貌似autofac 有针对webapi出的dll
针对wcf也有对应的dll

我现在的项目 webapi和mvc公用一个依赖注入,也在同一个进程上
处理webapi不可以用构造函数注入外  都没有其他问题

#2


PM> install-package autofac.webapi2 (注意:您的项目中如果使用的是webapi2,此处必须为webapi2而不是webapi,否则在运行时将出现“重写成员“Autofac.Integration.WebApi.AutofacWebApiDependencyResolver.BeginScope()”时违反了继承安全性规则。重写方法的安全可访问性必须与所重写方法的安全可访问性匹配。”错误。)

http://www.cnblogs.com/daisy-popule/p/4126599.html

#3


楼主解决了没,什么问题造成的?