19
votes

I am trying to build an asp.net web api 2.0 application using VS 2012 and asp net web tools for vs 2012 on .Net 4.5.2 framework; when i try to run the application, Inheritance security rules violated while overriding member: 'Autofac.Integration.WebApi.AutofacWebApiDependencyResolver.BeginScope()'. Security accessibility of the overriding method must match the security accessibility of the method being overriden.

I tried updating all the packages in the solution, adding [assembly: SecurityRules(SecurityRuleSet.Level1)] or [assembly: SecurityRules(SecurityRuleSet.Level2)] but none of them seems to work.

Please help me in resolving this issue I tried all the previous threads but none of them is working.

Thanks in advance.

Edit Below are the list of nugget packages that are referenced in my web api project

  1. Autofac.3.5.2
  2. Autofac.Configuration.3.3.0
  3. Autofac.Extras.DynamicProxy2.3.0.7
  4. Autofac.WebApi.3.1.0
  5. AutoMapper.4.2.1
  6. Castle.Core.3.3.3
  7. Microsoft.AspNet.Mvc.5.2.3
  8. Microsoft.AspNet.Razor.3.2.3
  9. Microsoft.AspNet.Web.Optimization.1.1.3
  10. Microsoft.AspNet.WebApi.5.2.3
  11. Microsoft.AspNet.WebApi.Client.5.2.3
  12. Microsoft.AspNet.WebApi.Core.5.2.3
  13. Microsoft.AspNet.WebApi.WebHost.5.2.3
  14. Microsoft.AspNet.WebPages.3.2.3
  15. Microsoft.Web.Infrastructure.1.0.0.0
  16. Moq.4.5.8
  17. Newtonsoft.Json.8.0.3
  18. WebGrease.1.6.0
1
Why are you running your website in partial trust? Microsoft dropped partial trust support for everything in ASP.NET since .NET 4.0, so you don't have to expect support from maintainers of libraries that integrate with ASP.NET.Steven
Hi Steven, Thanks for your reply, how can i run the application in full trust mode ? I don't see any setting in web.config as well.Amigo
Are you trying to use Autofac 4 beta with classic ASP.NET? Possibly a similar issue to this known issue.. We didn't have the classic integration libraries updated for Autofac 4 yet.Travis Illig
@TravisIllig No i am using Autofac.3.5.2 with Asp.net Web API 2.0, below are the nugget packages that i am using Autofac.3.5.2 Autofac.Configuration.3.3.0 Autofac.Extras.DynamicProxy2.3.0.7 Autofac.Mvc5.3.3.4 Autofac.WebApi.3.1.0Amigo
Might be good to update your question with the list of packages in a nice, readable format. Also would be good to mention you've got Web API and MVC in the same app.Travis Illig

1 Answers

46
votes

You need to use the Autofac.WebApi2 package with the latest classic Web API as outlined in the docs. The current release version of Autofac.WebApi2 is 3.4.0.