web-dev-qa-db-ja.com

スクリプトマネージャーとツールキットスクリプトマネージャーの違い

ScriptManagerToolkitScriptManagerの違いは何ですか?私は1つの説得力のある理由だけを見つけました:ToolkitScriptManagerはページのパフォーマンスを向上させます。もしそうなら、なぜScriptManagerを使うのですか?

21
Devjosh

まず、ASP.NET 3.5を使用し、AJAX Control Tookitからのコントロールを使用する場合、ASP.NET ScriptManagerではなくToolkitScriptManagerを使用する必要があります。このツールキットスクリプトによる制限は、 managerは更新されたAjaxスクリプトを追加します。これがないと、Ajax Controlツールキットライブラリのほとんどのコントロールは機能しません。

ASP.NET 4.0(4.5)を使用している場合は、ScriptManagerまたはToolkitScriptManagerのどちらを使用するかを選択できます。

基本的に、ToolkitScriptManagerの主な機能は、ScriptReferenceコレクションを使用してページに追加されたjsリソースを結合できることです。これらのjsファイルをアセンブリに埋め込み、このアセンブリにScriptCombineアセンブリ属性を追加する必要があります。ここでの主な問題は、スクリプトの組み合わせ方法を制御できず、独自のスクリプトを組み合わせようとした後、多くの問題が発生する可能性があることです(この機能を使用した経験があり、その結果、このアプローチ)。

ここでの要点は、現在標準のスクリプトマネージャーは、複合スクリプトコレクションを使用してスクリプトを組み合わせる機能を備えているということです。この機能はより柔軟で、スクリプトをページ上で組み合わせる方法を制御するのがより簡単です。詳細については、次のリンクを参照してください。 http://weblogs.asp.net/infinitiesloop/archive/2009/11/23/asp-net-4-0-scriptmanager-improvements.aspx =。

また、私が覚えている限り、ToolkitScriptManagerを使用している場合、ToolkitScriptManagerがScriptManagerから派生していることを考慮に入れても、CompositeScript機能を使用することはできません。

そのため、ASP.NET 4.0では、その違いはそれほど大きくなく、ToolkitScriptManagerの使用を避けることをお勧めします。主な理由は、標準のCompositeScript機能を使用すると、スクリプトの組み合わせ方法をより詳細に制御でき、ページのレンダリングを最適化できるためです。

ASP.NET 3.5の場合、Ajax Control Toolkitライブラリのコントロールを使用するかどうかは選択できません。

編集

Ajaxコントロールツールキットライブラリの最新の変更により、MS Ajaxスクリプトの更新に進みます。そのため、一部のコントロールはToolkitScriptManagerを追加しないと機能しません。

28
Maxim Kornilov