DotNetNuke 6是否支持Ajax Control Toolkit?

时间:2011-09-30 12:30:20

标签: ajaxcontroltoolkit dotnetnuke dotnetnuke-6

是否有人使用Ajax Control Toolkit在DNN 6中成功运行模块? 当我们从DNN 5.x迁移到6.x时,我的模块停止工作。 模块编译没有错误,但我收到客户端脚本错误:

'AjaxControlToolkit需要ASP.NET Ajax 4.0脚本。确保引用了正确版本的脚本。如果您使用的是ASP.NET ScriptManager,请切换到AjaxControlToolkit.dll中的ToolkitScriptManager

根据我发现的信息,似乎这与Telerik的控件存在冲突。但我没有找到任何解决方法的信息。

3 个答案:

答案 0 :(得分:2)

你应该能够使用旧版本的ASP.NET AJAX Control Toolkit,但是一旦他们开始要求ToolkitScriptManager,你就不会对DNN感到失望了(尽管你运气不好) 任何版本的DNN,因为无法覆盖它使用的ScriptManager类型。

从DNN 6开始,他们使用Telerik的RadScriptManager。以前,您可以修改核心代码以切换ToolkitScriptManager,但现在切换可能会导致其他问题。

答案 1 :(得分:1)

它可以一起工作,但你需要对DNN的核心做一些修改。

这里列出了要做的事情:

  • 检查您是否正在使用AjaxControlToolkit的.Net 4.0二进制文件的最新版本(我能够让它适用于DNN 6.0.1与Telerik 2011.01.519和ACT 2011年9月v4.1.50927)
  • 检查您的web.config中是否有System.Web.ExtensionsSystem.Web.Extensions.Design的程序集绑定重定向到4.0版
  • 获取DNN源包,找到Library\Framework\AJAX.cs,找到方法AddScriptManager,在其中实例化RadScriptManager,对于版本6.0.1,请查看第54行。再添加一个属性初始值设定项: EnableScriptCombine = false。编译它(当然是在发布配置中),使用DotNetNuke.dll并放入DNN安装。

你应该完成。

积分转到Telerik support,尽管它已经声明它应该从2010.1.625起开箱即用。不确定,我是否弄错了,或者他们只是重新引入了这个错误。

P.S。 DNN支持promises在11月发布版本6.1.0,其中包含更新的Telerik控件,至少应根据他们的意见解决此问题。

答案 2 :(得分:1)

刚刚检查了nuke 6.1和最后一个版本的jaxcontroltoolkit - 仍然是同样的错误。 看起来它不再受支持了。悲伤:(