获取错误 Menu_HoverStatic is null or undefined, not a function object, while using asp.net SiteMap control for menu items
Getting error Menu_HoverStatic is null or undefined, not a function object, while using asp.net SiteMap control for menu items
我们的是 ASP.net 应用程序,我们最近从 Windows 2008 迁移到 Windows 2016 服务器 IIS 10。
在 IE 11 的 Windows 7 OS 中,我们面临无法访问菜单项并且在悬停时抛出错误的问题:(Chrome 和 Win 10 IE 11 应用程序运行良好)
The value for property 'Menu_HoverStatic' is null or undefined, not a function object.
事件日志记录了不同的错误:
Event message: An error occurred processing a web or script resource request. The resource identifier failed to decrypt.
<Data>w3wp.exe</Data>
<Data>IIS APPPOOL\SDMS3AppPool</Data>
<Data>HttpException</Data>
<Data>Unable to validate data.
at System.Web.Configuration.MachineKeySection.EncryptOrDecryptData(Boolean fEncrypt, Byte[] buf, Byte[] modifier, Int32 start, Int32 length, Boolean useValidationSymAlgo, Boolean useLegacyMode, IVType ivType, Boolean signData)
at System.Web.UI.Page.DecryptString(String s, Purpose purpose)
at System.Web.Handlers.AssemblyResourceLoader.System.Web.IHttpHandler.ProcessRequest(HttpContext context)
</Data>
<Data>https://yourdomain.com/WebResource.axd?d=4008OIcfpQF6_PTcMUk_uuvjlbvBEPqjv3TH_Vnn6L3r0AEZJ8Q033KeIIkTHLC_AKyJ_c9JpdqPlJLfGOrxCpK--hZQ1gp-BXe8XbRP_6g1&t=636511268826842555</Data>
<Data>/WebResource.axd</Data>
我们在母版页中调用SiteMap:
<div class="NavigationContent">
<asp:Menu ID="Menu1" runat="server" Orientation="Horizontal" DataSourceID="SiteMapDataSource"
CssClass="Menu"
StaticEnableDefaultPopOutImage="false"
DynamicEnableDefaultPopOutImage="false"
StaticMenuItemStyle-CssClass="MenuItem"
StaticHoverStyle-CssClass="MenuItemHover"
StaticSelectedStyle-CssClass="MenuItemSelected"
DynamicMenuItemStyle-CssClass="MenuItem"
DynamicHoverStyle-CssClass="MenuItemHover"
DynamicSelectedStyle-CssClass="MenuItemSelected"
OnDataBound="Menu1_DataBound"
/>
<asp:SiteMapDataSource ID="SiteMapDataSource" runat="server" ShowStartingNode="false" />
</div>
经过 google,这个错误似乎是由于 webresource.axd。
我尝试了以下许多建议:
App pool mode set to Integrated, .net 4
Set browser security level to low
Add webresource.axd in IIS handler mapping for application virtual directory.
感谢大家的帮助!!
我尝试了很多建议,最后通过机器密钥解决了这个问题。
如果您的服务器是网络场,请确保您在所有服务器中拥有相同的密钥。
<system.web>
<machineKey validationKey="2488181654410AFDA27F6A1F4855B75E4E3BD4C7A18969D151A7524CEBE432583762F430B31D86AEEFD368CD2104616C38EABFCBC7C658DA3A553******" decryptionKey="30DC1CA2BD1BDDAB7BFA18DE02B0059443EC656B39FAB179E38CBD82CCF4E***" validation="SHA1" decryption="Auto"/>
</system.web>
您可以按照下面的文章生成机器密钥:
我们的是 ASP.net 应用程序,我们最近从 Windows 2008 迁移到 Windows 2016 服务器 IIS 10。 在 IE 11 的 Windows 7 OS 中,我们面临无法访问菜单项并且在悬停时抛出错误的问题:(Chrome 和 Win 10 IE 11 应用程序运行良好)
The value for property 'Menu_HoverStatic' is null or undefined, not a function object.
事件日志记录了不同的错误:
Event message: An error occurred processing a web or script resource request. The resource identifier failed to decrypt.
<Data>w3wp.exe</Data>
<Data>IIS APPPOOL\SDMS3AppPool</Data>
<Data>HttpException</Data>
<Data>Unable to validate data.
at System.Web.Configuration.MachineKeySection.EncryptOrDecryptData(Boolean fEncrypt, Byte[] buf, Byte[] modifier, Int32 start, Int32 length, Boolean useValidationSymAlgo, Boolean useLegacyMode, IVType ivType, Boolean signData)
at System.Web.UI.Page.DecryptString(String s, Purpose purpose)
at System.Web.Handlers.AssemblyResourceLoader.System.Web.IHttpHandler.ProcessRequest(HttpContext context)
</Data>
<Data>https://yourdomain.com/WebResource.axd?d=4008OIcfpQF6_PTcMUk_uuvjlbvBEPqjv3TH_Vnn6L3r0AEZJ8Q033KeIIkTHLC_AKyJ_c9JpdqPlJLfGOrxCpK--hZQ1gp-BXe8XbRP_6g1&t=636511268826842555</Data>
<Data>/WebResource.axd</Data>
我们在母版页中调用SiteMap:
<div class="NavigationContent">
<asp:Menu ID="Menu1" runat="server" Orientation="Horizontal" DataSourceID="SiteMapDataSource"
CssClass="Menu"
StaticEnableDefaultPopOutImage="false"
DynamicEnableDefaultPopOutImage="false"
StaticMenuItemStyle-CssClass="MenuItem"
StaticHoverStyle-CssClass="MenuItemHover"
StaticSelectedStyle-CssClass="MenuItemSelected"
DynamicMenuItemStyle-CssClass="MenuItem"
DynamicHoverStyle-CssClass="MenuItemHover"
DynamicSelectedStyle-CssClass="MenuItemSelected"
OnDataBound="Menu1_DataBound"
/>
<asp:SiteMapDataSource ID="SiteMapDataSource" runat="server" ShowStartingNode="false" />
</div>
经过 google,这个错误似乎是由于 webresource.axd。 我尝试了以下许多建议:
App pool mode set to Integrated, .net 4
Set browser security level to low
Add webresource.axd in IIS handler mapping for application virtual directory.
感谢大家的帮助!!
我尝试了很多建议,最后通过机器密钥解决了这个问题。 如果您的服务器是网络场,请确保您在所有服务器中拥有相同的密钥。
<system.web>
<machineKey validationKey="2488181654410AFDA27F6A1F4855B75E4E3BD4C7A18969D151A7524CEBE432583762F430B31D86AEEFD368CD2104616C38EABFCBC7C658DA3A553******" decryptionKey="30DC1CA2BD1BDDAB7BFA18DE02B0059443EC656B39FAB179E38CBD82CCF4E***" validation="SHA1" decryption="Auto"/>
</system.web>
您可以按照下面的文章生成机器密钥: