如何防止 MsAjax 脚本加载到 ASP.NET WebForms 项目上?

我创建了一个 ASP.NET 4.7.1 WebForms Web 应用程序项目。

  • 我删除了 BundleConfig.cs 中对 ~/Scripts/WebForms 和 ~/Scripts/WebForms/MsAjax 的所有引用。

  • 我删除了 Microsoft.AspNet.ScriptManager.MSAjax 和 Microsoft.ScriptManager.MSAjax 的 NuGet 包

  • 我对整个项目的“msajax”进行了“编辑 > 在文件中查找”,但没有找到任何内容。

当我在我的网站上加载任何页面时, ~/Scripts/WebForms/MsAjax/MicrosoftAjax.js 和 ~/Scripts/WebForms/MsAjax/MicrosoftAjaxWebForms.js 仍然加载。您可以在 HTML 源代码中看到它们,并看到它们在标准浏览器开发人员工具中加载。我不需要它们(据我所知),我不希望它们浪费我的带宽(每个页面加载超过 140KB)。

显然我可以自己删除文件,但是我的日志中只会出现 HTTP 404 错误。


一只萌萌小番薯
浏览 187回答 1
1回答

临摹微笑

要防止 MsAjax 脚本在页面上加载,您需要将属性设置AjaxFrameworkMode为Disabled标记<asp:ScriptManager ID="ScriptManager" AjaxFrameworkMode="Disabled" ScriptMode="Release" runat="server">&nbsp; &nbsp; <CompositeScript ScriptMode="Release">&nbsp; &nbsp; &nbsp; &nbsp; <Scripts>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <asp:ScriptReference Name="WebForms.js" Assembly="System.Web" />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <asp:ScriptReference Name="WebUIValidation.js" Assembly="System.Web" />&nbsp; &nbsp; &nbsp; &nbsp; </Scripts>&nbsp; &nbsp; </CompositeScript></asp:ScriptManager>背后的代码ScriptManager.AjaxFrameworkMode = AjaxFrameworkMode.Disabled;
打开App,查看更多内容
随时随地看视频慕课网APP