我正在尝试升级我们在 ASP.NET 3.5 项目中使用的 AjaxControlToolkit 版本。它构建得很好,但是当我加载一个带有 AjaxControlToolkit 控件的页面时,它会给出错误:
JavaScript 运行时错误:AjaxControlToolkit 需要 ASP.NET Ajax 4.0 脚本。确保引用了正确版本的脚本。如果您使用的是 ASP.NET ScriptManager,请切换到 AjaxControlToolkit.dll 中的 ToolkitScriptManager。
我们正在使用一个扩展 ToolkitScriptManager 的类,并引用 AjaxControlToolkit 作为我们的 ScriptManager。
查看 javascript 后,我可以看出所包含的版本不包含工具包下载中包含的 .js 源文件所具有的某些更新。我不确定 ToolkitScriptManager 从哪里获取其 AJAX .js 文件,但我需要找到一种方法来强制它使用较新的版本。
简单地将它们作为嵌入资源包含在项目中是行不通的。
我正在 VS2008 3.5 SP1 中构建这个项目(根据客户的要求)。我正在尝试从源代码构建 AjaxControlToolkit,因为我们需要将一些扩展应用于 Toolkit 控件。
如果他们有帮助,我很乐意提供更多详细信息。
编辑:事实证明,我已经ApplyAssembly(e.Script, false);
在我的 ToolkitScriptManager 副本中注释掉了该行。将其放回原处会导致执行失败,GetBaseUrl
并显示InvalidOperationException
:
程序集“AjaxControlToolkit,版本=1.0.0.0,文化=中性,PublicKeyToken=28f01b0e84b6d53e”不包含名称为“MicrosoftAjax.js”的 Web 资源。