2011-09-30 89 views
7

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

'AjaxControlToolkit需要ASP.NET Ajax 4.0脚本。确保引用了正确版本的脚本。根据我发现的信息,如果您正在使用ASP.NET ScriptManager,请切换到AjaxControlToolkit.dll中的ToolkitScriptManager'

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

回答

1

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

这里要做的事情列表:

  • 检查是否正在使用最新版本的.NET 4.0 AjaxControlToolkit的二进制文件(我是能够让它为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。编译它(当然在Release配置中),把DotNetNuke.dll放到你的DNN安装中。

你应该完成。

积分去Telerik support,尽管它表示它应该从2010.1.625开始开箱即用。不知道,我弄错了他们,或者他们刚刚重新引入这个错误。

P.S. DNN支持promises在11月发布了版本6.1.0,并更新了Telerik控件,这应该能够解决这个问题,至少在他们看来是这样。

2

您应该可以使用旧版本的ASP.NET AJAX Control Toolkit,但是一旦它们开始需要ToolkitScriptManager,那么您的DNN运气不佳(尽管您会遇到任何 DNN的版本,因为有没有覆盖的ScriptManager它使用的类型的方式。

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

+1

有没有一种方法可以混合模块使用ASP.NET AJAX和'RadScriptManager'在DNN6的一个安装中,还是我们坚持使用DNN5? – Abel

1

刚刚核对nuke 6.1和最新版本的jaxcontroltoolkit - 仍然是同样的错误。 看起来它不再被支持。悲伤:(

+0

奇怪,我升级到DNN 6.1.3和我的AJAXToolkit是工作正常吗?你可以在这个页面看到它 - http://www.pokerdiy.com/poker-league/lid/241/rods-sydney-poker-league.aspx(注意 - 我还没有升级AJAX Toolkit的一些时间!) – Rodney