質問

asp.net ajaxControlTookKit(.net 3.5 sp1より前)のバージョン3.0.20229.0を使用しています。カスタム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属性をアセンブリファイルに追加する必要があることがわかります。 WebSiteプロジェクトを実行していますが、この属性を追加するにはどうすればよいですか?

役に立ちましたか?

解決

スクリプトをリソースとして別のライブラリに追加し、そこからスクリプトを参照して、スクリプトコンバイナを利用する必要があります。

編集してウォークスルーを提供

新しいクラスライブラリプロジェクト(たとえば" CombinedScipts"と呼ばれる)を作成し、デフォルトクラスを削除します。

AjaxControlToolkit System.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()]

このライブラリをWebサイトプロジェクトの参照として追加します。

プロジェクトで、ToolkitScriptManagerタグの間に次を追加できます。

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

ToolkitScriptManagerのCombineScriptsプロパティがtrueに設定されていることを確認することを忘れないでください。

これにより、次のような呼び出しが1回行われます。     /pageName.aspx?_TSM_HiddenField_=ToolkitScriptManager1_HiddenField& [...]

次のようなコメント区切り文字を使用して、組み合わせたスクリプトが含まれます:

//START CombinedScripts.Console.js
[...]
//END CombinedScripts.Console.js
//START CombinedScripts.Utilities.js
[...]
//END CombinedScripts.Utilities.js
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top