我的ASP.NET网站在开发/调试模式下运行良好,但是当我发布它时,我收到以下错误:
安全例外
描述:应用程序尝试执行安全策略不允许的操作。要授予此应用程序所需的权限,请与您的系统管理员联系或在配置文件中更改应用程序的信任级别。
异常详细信息: System.Security.SecurityException:对类型'System.Web.AspNetHostingPermission,System,Version = 2.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089'的权限的请求失败。
我已经搜索了这个错误,并且它出现了很多,并且答案说同样的事情:把
<trust level="Full" originUrl=""/>
web.config文件中的。
雅,你,雅。事实上,我已经检查过这行是在我能找到的每个web.config文件中 - 应用程序本身,还有32位和64位的framework \ version \ config \ web.config文件(我正在运行) Windows 7)。某处必须有另一个秘密开关 - 但是什么?
修改
根据评论者的要求,让我澄清一下:导致崩溃的页面可以控制AJAX Control Toolkit。如果我注释掉ToolkitScriptManager和CalendarExtender控件,那么页面工作正常,即使在IIS下也是如此。
错误堆栈跟踪(如果有帮助):
[SecurityException: Request for the permission of type 'System.Web.AspNetHostingPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.]
System.Reflection.Assembly._GetType(String name, Boolean throwOnError, Boolean ignoreCase) +0
System.Web.UI.NamespaceTagNameToTypeMapper.GetControlType(String tagName, IDictionary attribs, Boolean throwOnError) +209
System.Web.UI.TagPrefixTagNameToTypeMapper.System.Web.UI.ITagNameToTypeMapper.GetControlType(String tagName, IDictionary attribs) +210
System.Web.UI.MainTagNameToTypeMapper.GetControlType2(String tagName, IDictionary attribs, Boolean fAllowHtmlTags) +242
System.Web.UI.MainTagNameToTypeMapper.GetControlType(String tagName, IDictionary attribs, Boolean fAllowHtmlTags) +17
System.Web.UI.RootBuilder.GetChildControlType(String tagName, IDictionary attribs) +22
System.Web.UI.ControlBuilder.CreateChildBuilder(String filter, String tagName, IDictionary attribs, TemplateParser parser, ControlBuilder parentBuilder, String id, Int32 line, VirtualPath virtualPath, Type& childType, Boolean defaultProperty) +119
System.Web.UI.TemplateParser.ProcessBeginTag(Match match, String inputText) +605
System.Web.UI.TemplateParser.ParseStringInternal(String text, Encoding fileEncoding) +1334
答案 0 :(得分:1)
找到answer!
答案 1 :(得分:0)
我从一个有旧代码的黑暗地方来到这里,当我单击答案链接时,我得到了404。
感觉有点像:https://imgs.xkcd.com/comics/wisdom_of_the_ancients.png
无论如何,将机器带回救援: