在webforms的web.config .net 4.5应用程序中,我设置了以下内容:
<trust legacyCasModel="true" level="Full" />因为这是微软为克服asp.net报表查看器中的一个错误而工作的结果,这会导致大型报表的生成时间要比以前的.net版本(3.5和更高版本)要长得多。不幸的是,启用遗留CasModel导致了下面的错误。正如错误提示的那样,我多次尝试在我的站点的web.config中应用异常,例如:
<system.web>
<partialTrustVisibleAssemblies>
<add assemblyName="System.Web.Extensions" version="4.0.0" publicKey="0024000004800000940000000602000000240000525341310004000001000100B5FC90E7027F67871E773A8FDE8938C81DD402BA65B9201D60593E96C492651E889CC13F1415EBB53FAC1131AE0BD333C5EE6021672D9718EA31A8AEBD0DA0072F25D87DBA6FC90FFD598ED4DA35E44C398C454307E8E33B8426143DAEC9F596836F97C8F74750E5975C64E2189F45DEF46B2A2B1247ADC3652BF5C308055DA9" />
</partialTrustVisibleAssemblies>
</system.web>但错误仍在发生。我还尝试将此设置应用于.net 4 web.config,并指定此程序集具有完全信任,但仍然无法工作。我已经阅读了大量有关这个问题的文档,我无法找到这个问题可能解决的任何其他方法(除了在我的项目中删除这个程序集或对我的web应用程序进行其他重大更改)。任何关于我如何解决或解决这个问题的建议都将不胜感激。
'/‘应用程序中的服务器错误。安全透明方法'Microsoft.ScriptManager.MSAjaxv45.PreApplicationStartCode.Start()‘访问安全关键方法'System.Web.UI.ScriptManager.get_ScriptResourceMapping()’的尝试失败。程序集'System.Web.Extensions,Version=4.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35‘是在当前AppDomain中不启用的有条件的APTCA程序集。若要使此程序集可由部分信任或安全透明代码使用,请在创建该程序集时将程序集名称“PublicKey=0024000004800000940000000602000000240000525341310004000001000100B5FC90E7027F67871E773A8FDE8938C81DD402BA65B9201D60593E96C492651E889CC13F1415EBB53FAC1131AE0BD333C5EE6021672D9718EA31A8AEBD0DA0072F25D87DBA6FC90FFD598ED4DA35E44C398C454307E8E33B8426143DAEC9F596836F97C8F74750E5975C64E2189F45DEF46B2A2B1247ADC3652BF5C308055DA9‘,System.Web.Extensions”添加到PartialTrustVisibleAssemblies列表中。描述:在执行当前web请求时发生了未处理的异常。请查看堆栈跟踪以获得有关错误的更多信息,以及它起源于代码的位置。异常详细信息:安全透明方法'Microsoft.ScriptManager.MSAjaxv45.PreApplicationStartCode.Start()‘访问安全关键方法'System.Web.UI.ScriptManager.get_ScriptResourceMapping()’的尝试失败。程序集'System.Web.Extensions,Version=4.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35‘是在当前AppDomain中不启用的有条件的APTCA程序集。若要使此程序集可由部分信任或安全透明代码使用,请在创建该程序集时将程序集名称“PublicKey=0024000004800000940000000602000000240000525341310004000001000100B5FC90E7027F67871E773A8FDE8938C81DD402BA65B9201D60593E96C492651E889CC13F1415EBB53FAC1131AE0BD333C5EE6021672D9718EA31A8AEBD0DA0072F25D87DBA6FC90FFD598ED4DA35E44C398C454307E8E33B8426143DAEC9F596836F97C8F74750E5975C64E2189F45DEF46B2A2B1247ADC3652BF5C308055DA9‘,System.Web.Extensions”添加到PartialTrustVisibleAssemblies列表中。
发布于 2016-09-14 14:51:53
@Sachin,谢谢您的回答,但是我需要这个项目的程序集,这样就不会解决这个问题了。我不久前解决了这个问题。我认为这个错误是在尝试应用程序中的一些身份验证函数时发生的。我通过将report函数设置为在一个新的应用程序池中打开来解决这个问题,这样遗留CAS模型的启用只会影响到新的应用程序池,因此不会影响应用程序中的其他身份验证功能。
发布于 2016-09-14 14:21:34
尝试从引用中删除"Microsoft.ScriptManager.MSAjax.dll“和"Microsoft.ScriptManager.WebForms.dll”(如果没有使用)。
https://stackoverflow.com/questions/36042777
复制相似问题