' Sys系统'发布到服务器后出现未定义的错误

时间:2013-10-21 09:26:25

标签: c# javascript asp.net toolkitscriptmanager

我的项目遇到了问题。 我有一个其他4个页面使用的母版页。在其他页面上有一个脚本管理器,在其他div标签下面,我在文本框上使用Ajax Accordion控件和Ajax Date Control扩展器。我的本地主机上的一切正常,但当我发布到我们的实时服务器(IIS 7,.net framework 4.0)时,所有ajax控件都停止响应并且网页出错:

  

消息:'系统'未定义

一切都是在.net框架4中构建的,我已经尝试过其他版本的Ajax控件,但无济于事。关于此错误的其他帖子指向我的Web配置,但是在其中放置了正确的程序集,但它仍然给我错误。这是我第一次收到错误,我已经构建了多个这样的网络应用程序。任何帮助,将不胜感激。谢谢。

1 个答案:

答案 0 :(得分:0)

您的本地应用程序和生产环境之间显然存在配置差异。您是在更新整个应用程序还是只更新几个文件?

要尝试的一些事项:

1

检查生产环境中的web.config文件以确保启用了ASP.NET AJAX。具体这一节:

  <system.web>
    <httphandlers>
      <remove path="*.asmx" verb="*" />
      <add path="*.asmx" verb="*" validate="false"
           type="System.Web.Script.Services.ScriptHandlerFactory, 
                 System.Web.Extensions, Version=3.5.0.0,
                 Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
    </httphandlers>
  </system.web>

2

如果您有任何试图访问Sys.WebForms.PageRequestManager的Javascript,您需要确保将其放置在

之后

3

当您使用.NET 4时,请尝试在AjaxFrameworkMode控件上设置ScriptManager属性:

<asp:ScriptManager ID="sm1" AjaxFrameworkMode="Enabled" runat="server">

一些有用的链接

http://encosia.com/asmx-scriptservice-mistakes-installation-and-configuration/

http://encosia.com/updated-your-webconfig-but-sys-is-still-undefined/

http://www.asp.net/whitepapers/aspnet4#0.2__Toc253429253