none
toolkitscriptmanager マスターページに適用させるには? RRS feed

  • 質問

  • VisualStudio2012にてASP.Webフォームアプリケーション
    を作成し、そのテンプレートを利用しAjaxControlToolkitのCalendarExtenderを使用しようと考えています。VisualStudio2012のNuGetからAjaxControlToolkitをインストールし、テンプレートのマスターページ(Site.Master)を使わず新規ページから利用した場合は問題なく動作したのですが、マスターページ(Site.Master)を利用してCalendarExtenderを使うとエラーなってしまいます。マスターページ(Site.Master)にScriptManagerのタグが存在したのでそれをajaxToolkit:ToolkitScriptManagerに変更し試してみたのですが、「JavaScript 実行時エラー: AjaxControlToolkit requires ASP.NET Ajax 4.0 scripts. Ensure the correct version of the scripts are referenced. If you are using an ASP.NET ScriptManager, switch to the ToolkitScriptManager in AjaxControlToolkit.dll」となります。
    なにか他に設定等が必要なのでしょうか?

    有識者の方、何か情報があればご教授お願い致します。

    2014年8月21日 8:56

回答

すべての返信

  • Ajax Control Toolkit の最新版は December 2013 Release Version 7.1213 ですがあなたが使っているのがそれですか?

    それには .NET 3.5, .NET 4, .NET 4.5 の 3種類あって、あなたが開発しているものと合っているのでしょうか?

    Bin フォルダの AjaxControlToolkit.dll のバージョンを確認してください。

    エラーメッセージの意味は理解されてますよね?


    • 編集済み SurferOnWww 2014年8月21日 9:38 タイポ訂正
    2014年8月21日 9:37
  • 返信ありがとうございます。

    バージョン値は4.5.7.1213利用しています。開発環境も4.5です。
    バージョン値が正しくないとのMSGだと思い4.0で試しても結果は同じでした。

    Site.Masterを介さないページの場合は、問題なく動作したので
    Site.MasterのToolkitScriptManagerの以下の設定がで何か問題あるのかと思い質問させて頂きました。

        <ajaxToolkit:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server">
           <Scripts>
                <asp:ScriptReference Name="MsAjaxBundle" />
                <asp:ScriptReference Name="jquery" />
                <asp:ScriptReference Name="jquery.ui.combined" />
                <asp:ScriptReference Name="WebForms.js" Assembly="System.Web" Path="~/Scripts/WebForms/WebForms.js" />
                <asp:ScriptReference Name="WebUIValidation.js" Assembly="System.Web" Path="~/Scripts/WebForms/WebUIValidation.js" />
                <asp:ScriptReference Name="MenuStandards.js" Assembly="System.Web" Path="~/Scripts/WebForms/MenuStandards.js" />
                <asp:ScriptReference Name="GridView.js" Assembly="System.Web" Path="~/Scripts/WebForms/GridView.js" />
                <asp:ScriptReference Name="DetailsView.js" Assembly="System.Web" Path="~/Scripts/WebForms/DetailsView.js" />
                <asp:ScriptReference Name="TreeView.js" Assembly="System.Web" Path="~/Scripts/WebForms/TreeView.js" />
                <asp:ScriptReference Name="WebParts.js" Assembly="System.Web" Path="~/Scripts/WebForms/WebParts.js" />
                <asp:ScriptReference Name="Focus.js" Assembly="System.Web" Path="~/Scripts/WebForms/Focus.js" />
                <asp:ScriptReference Name="WebFormsBundle" />
            </Scripts>
        </ajaxToolkit:ToolkitScriptManager>

    そもそも<asp:ScriptManager runat="server">タグを<ajaxToolkit:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server">に変更するだけではだめってことですかね。
    いろいろ調べてエラーMSGを解消するにはタグを変更するとの情報があったので。
    無知で申し訳ありません。

    2014年8月21日 10:16
  • 自分は .NET 4.5 も NuGet も使ったことがありませんのでハズレかもしれませんが、ググって調べてみたところ以下のような問題があるそうです。

    AjaxControlToolkit requires ASP.NET Ajax 4.0 scripts Error
    http://stackoverflow.com/questions/19391560/ajaxcontroltoolkit-requires-asp-net-ajax-4-0-scripts-error

    ajaxcontoltoolkit not working
    http://stackoverflow.com/questions/14911701/ajaxcontoltoolkit-not-working

    • 回答としてマーク kuromaru 2014年8月22日 2:09
    2014年8月21日 14:31
  • 返信ありがとうございます。

    教えて頂いたサイトを確認しbinからMicrosoft.AspNet.ScriptManager.MSAjax.dllを削除するこで動作が可能となりました。ありがとうございます。

    2014年8月22日 2:09