我创建了一个新项目。我从NuGet安装了Ajax Control Toolkit。然后我用以下代码创建了一个新页面aspx:
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<ajaxToolkit:ToolkitScriptManager ID="toolkitScriptMaster" runat="server">
</ajaxToolkit:ToolkitScriptManager>
hello!!!!
</div>
</form>
</body>
</html>
当我看到ajaxtookit创建了152个scriptresources文件时,我感到茫然。
我很担心,因为我知道这会影响页面的加载时间。
这是正常的吗?
我该怎么办?
答案 0 :(得分:17)
CodePlex的2013年7月发布的AjaxControlToolkit introducing control bundles。
此后默认情况下,AjaxControlToolkit会加载所有脚本。因此,要管理应添加和分组哪些控件的脚本,您需要将AjaxControlToolkit.config添加到Web应用程序项目的根目录。如下例所示:
<ajaxControlToolkit>
<controlBundles>
<controlBundle>
<control name="CalendarExtender" />
<control name="ComboBox" />
</controlBundle>
<controlBundle name="CalendarBundle">
<control name="CalendarExtender"></control>
</controlBundle>
</controlBundles>
</ajaxControlToolkit>
然后,您需要通过向工具包脚本管理器控件添加具有特定名称的bundle来指定将在哪个页面上使用哪些bundels(或者如果您有所有页面上使用的控件则使用母版页):
<ajaxToolkit:ToolkitScriptManager runat="server" CombineScripts="true"
ScriptMode="Release" >
<ControlBundles>
<ajaxToolkit:ControlBundle Name="Calendar" />
</ControlBundles>
</ajaxToolkit:ToolkitScriptManager>
备注:here你可以找到包含最多的配置示例(可能是ajax控件工具包库中所有控件的定义)。