1)
安全透明方法“Autofac.Integration.Mvc.RegistrationExtensions.RegisterControllers(Autofac.ContainerBuilder, System.Reflection.Assembly[])”嘗試訪問安全關鍵類型“Autofac.Builder.IRegistrationBuilder`3<System.Object,Autofac.Features.Scanning.ScanningActivatorData,Autofac.Builder.DynamicRegistrationStyle>”失敗。
程序集“Autofac.Integration.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=17863af14b0044da”標記為 AllowPartiallyTrustedCallersAttribute 並且使用 2 級安全透明模型。默認情況下,2 級透明將導致 AllowPartiallyTrustedCallers 程序集中的所有方法都變成安全透明的,這可能是導致發生此異常的原因。
問題原因:引入的Nuget程序包的版本不一致,不匹配
解決辦法:使用MVC4 + Autofac 3.3.1版本 + Autofac ASP.NET MVC4 Integration 3.1.0版本
NuGet程序包引入方法:程序包管理控制台:引入 Autofac 3.3.1版本語句 Install-Package Autofac -Version 3.3.1 引入Autofac ASP.NET MVC4 Integration 3.1.0版本用項目點擊右鍵-》管理NuGet程序包-》找到Autofac ASP.NET MVC4 Integration,點擊安裝
2)
重寫成員“Autofac.Integration.WebAPI.......”是違反了繼承安全性原則,重寫方法的安全可訪問性必須與所重寫方法的安全可訪問性匹配
問題原因:引入的Nuget程序包的版本不一致,不匹配
解決辦法:重新引入程序集