■ 概要
* 開発環境ではエラーにならなかったのに、WEBサーバーへアップしたら 「ASP.NET Ajax クライアント側フレームワークを読み込めませんでした。」 「SYSが宣言されていません」(英語では「Sys is undefined」)などが 表示されることについて、ネットの情報をまとめる。 (でたら、とりあえずIISのログでもみる)
■ 対策案「'AjaxControlToolkit'は宣言されていません」
[1]meta-base タグなどで、参照を修正する
http://blogs.yahoo.co.jp/hijiri_shibano/30683326.htmlより抜粋 meta-base タグなどで、参照がずれている場合 この場合、必ずエラーになる
[2]ToolkitScriptManagerを通常のScriptManagerコントロールに置き換える
http://d.hatena.ne.jp/koolah/20100906より抜粋■変更前
<ajaxToolkit:ToolkitScriptManager runat="Server" ID="ScriptManager1" …/>■変更後
<asp:ScriptManager ID="ScriptManager1" runat="server" …/>
■ 対策案「SYSが宣言されていません」
[1]以下を試す
http://social.msdn.microsoft.com/Forums/ja/aspnetja/thread/1c3c201b-8ead-4e6a-b94d-37bb90c8873bより抜粋 IISマネージャーで当該ディレクトリのプロパティを開いて 「ディレクトリ」タブの「作成」ボタンを押してみたら解決しました。
[2] web.configの設定を見直す
http://blogs.yahoo.co.jp/tksoft/59953837.htmlでは、「*.axd のハンドラマッピングが出来ていない」とのことで、web.configの設定で解決できたらしい。 <add verb="GET" path="ScriptResource.axd" type="Microsoft.Web.Handlers.ScriptResourceHandler" validate="false"/ >web.config
http://blogs.msdn.com/b/webtopics/archive/2009/02/27/asp-net-ajax-functionality-not-working-on-the-page-getting-sys-is-undefined.aspx
より抜粋 <!-- The system.webServer section is required for running ASP.NET AJAX under Internet Information Services 7.0. It is not necessary for previous version of IIS. --> <system.webServer> <validation validateIntegratedModeConfiguration="false"/> <modules> <remove name="ScriptModule" /> <add name="ScriptModule" preCondition="managedHandler" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> </modules> <handlers> <remove name="WebServiceHandlerFactory-Integrated"/> <remove name="ScriptHandlerFactory" /> <remove name="ScriptHandlerFactoryAppServices" /> <remove name="ScriptResource" /> <add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> <add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> <add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> </handlers> </system.webServer>