【问题标题】:combine scripts in asp.net ajax toolkit在 asp.net ajax 工具包中组合脚本
【发布时间】:2010-10-12 05:12:49
【问题描述】:

我们使用的是 3.0.20229.0 版本的 asp.net ajaxControlTookKit(.net 3.5 sp1 之前)。我想知道是否可以将我们的自定义 javascript 文件合并到 controlTookKit 创建的 ScriptResource.axd 中。我找到了这篇文章 (http://blogs.msdn.com/delay/archive/2007/06/11/script-combining-made-easy-overview-of-the-ajax-control-toolkit-s-toolkitscriptmanager.aspx) 这告诉我需要将 scriptCombine 属性添加到程序集文件中。我们正在运行一个网站项目,如何添加这个属性?

【问题讨论】:

    标签: asp.net ajax ajaxcontroltoolkit


    【解决方案1】:

    您需要将脚本作为资源添加到单独的库中并从那里引用它们以利用脚本组合器。

    编辑以提供演练

    创建一个新的类库项目(例如称为“CombinedScipts”),删除默认类。

    添加对 AjaxControlToolkitSystem.Web

    的引用

    将您的 JS 文件添加到项目中,并将其 Build Action 属性更改为“Embedded Resource”。

    打开 AssemblyInfo.cs 文件

    添加以下内容:

    // You need to add a web resource call for each JS file in the project
    [assembly: WebResource("CombinedScripts.Console.js", "text/javascript")]
    [assembly: WebResource("CombinedScripts.Utilities.js", "text/javascript")]
    // Not setting IncludeScripts or ExcludeScripts marks all scripts as
    // combinable.
    [assembly: AjaxControlToolkit.ScriptCombine()]
    

    将此库作为参考添加到您的网站项目中。

    在您的项目中,您可以在 ToolkitScriptManager 标记之间添加以下内容:

    <Scripts>
      <asp:ScriptReference name="CombinedScripts.Console.js" 
                           assembly="CombinedScripts" />
      <asp:ScriptReference name="CombinedScripts.Utilities.js"
                           assembly="CombinedScripts" />
    </Scripts>
    

    不要忘记确保 ToolkitScriptManager 的 CombineScripts 属性设置为 true。

    这会导致一次调用,例如: /pageName.aspx?_TSM_HiddenField_=ToolkitScriptManager1_HiddenField&[...]

    其中将包含您的组合脚本,并带有注释分隔符,例如:

    //START CombinedScripts.Console.js
    [...]
    //END CombinedScripts.Console.js
    //START CombinedScripts.Utilities.js
    [...]
    //END CombinedScripts.Utilities.js
    

    【讨论】:

    • 你有关于这种方法的任何例子吗?
    • 对不起,我正在按照你的评论写演练。
    • 非常感谢。 .NET 3.5 sp1 为这个问题提供了一个更简洁的解决方案:asp.net/learn/3.5-SP1/video-296.aspx。我想我会等到我们升级我们的框架。再次感谢。
    • 是的,不能否认 3.5 SP1 更新让这一切变得更加容易。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多