使用Autofac,提示重写成员“Autofac.Integration.Mvc.AutofacDependencyResolver.GetService(System.Type)”时违反了继承安全性规则。重写方法的安全可访问性必须与所重写方法的安全可访问性匹配。

接触Autofac大概有2天左右,第2天,亲自动手搭建demo,搭完,以为大功告成的时候,提示了这个错误,网上找了很多方法,都没有解决。

为以后的朋友,避免踩坑,分享一下我的解决方法。

Dmeo我是新建的WebApi

默认的环境:VS2015、.net 4.5.2、MVC5.2.3(这个是“坑”)

1.引用Autofac,我使用的是4.0.1版本

2.引用Autofac.MVC(看截图其实已经可以明白问题的原因了,我第一次引用的是Autofac.MVC4,而我的项目引用的MVC是5.2.3的版本)

3.要引用Autofac.MVC5,引用Autofac.MVC5,引用Autofac.MVC5

 

 问题解决了,其实找到原因才发现很简单,就是引用的Autofac.MVC版本和项目的MVC版本要一致,引用前注意查看MVC的版本。

 

PS,网上有人说这个报错,是因为同时引用Autofac.MVC和Autofac.WebApi冲突导致,其实不是。我在解决问题之后,又同时引用了Autofac.WebApi,完美运行。

 

posted @ 2018-03-06 10:11  shacoli  阅读(2421)  评论(0编辑  收藏  举报