FileHelpers.dllを使用しているときにこのエラーが発生しますが、IISが完全信頼レベルに設定されているため、このようにすべきではありません
これが完全なスタックトレースです。
[PolicyException: Required permissions cannot be acquired.]
System.Security.SecurityManager.ResolvePolicy(Evidence evidence, PermissionSet reqdPset, PermissionSet optPset, PermissionSet denyPset, PermissionSet& denied, Boolean checkExecutionPermission) +10238142
System.Security.SecurityManager.ResolvePolicy(Evidence evidence, PermissionSet reqdPset, PermissionSet optPset, PermissionSet denyPset, PermissionSet& denied, Int32& securitySpecialFlags, Boolean checkExecutionPermission) +97
[FileLoadException: Could not load file or Assembly 'FileHelpers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=3e0c08d59cc3d657' or one of its dependencies. Failed to grant minimum permission requests. (Exception from HRESULT: 0x80131417)]
System.Reflection.Assembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection) +0
System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) +416
System.Reflection.Assembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) +166
System.Reflection.Assembly.Load(String assemblyString) +35
System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +190
[ConfigurationErrorsException: Could not load file or Assembly 'FileHelpers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=3e0c08d59cc3d657' or one of its dependencies. Failed to grant minimum permission requests. (Exception from HRESULT: 0x80131417)]
System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +11207304
System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory() +388
System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo ai) +232
System.Web.Configuration.AssemblyInfo.get_AssemblyInternal() +48
System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection compConfig) +210
System.Web.Compilation.BuildProvidersCompiler..ctor(VirtualPath configPath, Boolean supportLocalization, String outputAssemblyName) +76
System.Web.Compilation.ApplicationBuildProvider.GetGlobalAsaxBuildResult(Boolean isPrecompiledApp) +283
System.Web.Compilation.BuildManager.CompileGlobalAsax() +50
System.Web.Compilation.BuildManager.EnsureTopLevelFilesCompiled() +676
[HttpException (0x80004005): Could not load file or Assembly 'FileHelpers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=3e0c08d59cc3d657' or one of its dependencies. Failed to grant minimum permission requests. (Exception from HRESULT: 0x80131417)]
System.Web.Compilation.BuildManager.ReportTopLevelCompilationException() +76
System.Web.Compilation.BuildManager.EnsureTopLevelFilesCompiled() +1012
System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters) +1025
[HttpException (0x80004005): Could not load file or Assembly 'FileHelpers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=3e0c08d59cc3d657' or one of its dependencies. Failed to grant minimum permission requests. (Exception from HRESULT: 0x80131417)]
System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +11301302
System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +88
System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +4338644
クリーンなWindows 7インストールで開発マシンを再構築したときにも、同様の問題が発生しました。探し回った後、自分に役立つ解決策を見つけました。
IISアプリケーションプールの詳細設定の[プロセスモデル]で、[ユーザープロファイルの読み込み]をtrueに設定します。
あなたの信頼レベルのようなチェックする他のいくつかのものがありますが、それらのどれも私に適用されませんでした(それはすべて私の開発マシンではすでに完全な信頼でした)。ユーザープロファイルを読み込むようにアプリケーションプールを設定すると、修正されました。
Windows 2008 R2にも同様の問題があり、アプリケーションは64ビットモードで正常に動作しましたが、32ビットモードに切り替えると機能しなくなり、アクセス許可エラーがスローされます。IIS7の詳細設定>>プロセスモデル>> 「ID」設定はデフォルトで「アプリケーションプールID」に切り替えられており、32ビットモードで動作するように「ネットワークサービス」に変更する必要がある場合があります。
私たちはそれを行い、今ではスムーズにハミングしています。技術的にはフォルダのアクセス許可の問題であるため、この情報の一口がフォルダのアクセス許可を指摘する理由であると考えられます。ただし、変更はIISにあり、フォルダ自体のセキュリティ設定ではありませんでした。
これは一般的なアセンブリの読み込みエラーではないようです。他のすべての投稿がエラーの考えられる原因のリストになったので、感謝します。
もう1つ見つかりました。私は上記のすべてを試しましたが、成功しませんでした。最終的に、ビルド構成が「デバッグ」のVisual Studios Express 2008からWebアプリケーションを公開していることに気付きました。ビルド構成を「リリース」に変更した後、Webアプリは機能しました。
詳細:Visual Studios Express 2008は、Win 2008 R2サーバー上のIIS7.5にファイルを移動します。
彼女が属する問題は、SharePointが信頼できないddlを使用して問題を解決します:
同様の問題があり、次の手順で問題を解決しました:
load user profile
をtrue
に設定します