• .NET 4.51 Web表单
  • VS2013更新1

  • 我从一个全新的Web项目开始,选择了WebForms和MVC支持。在本地工作了几天,没有问题。但是,现在我通过Web部署它,我得到了错误:

    TypeError:Sys.WebForms.Res未定义

    阅读了其他文章后,看来这与ScriptManager等有关。所以下面是我的母版页脚本管理器块:
    <asp:ScriptManager runat="server">
        <Scripts>
            <%--To learn more about bundling scripts in ScriptManager see http://go.microsoft.com/fwlink/?LinkID=301884 --%>
            <%--Framework Scripts--%>
    
            <%--<asp:ScriptReference Name="jquery" />--%>
            <asp:ScriptReference Name="MsAjaxBundle" />
            <asp:ScriptReference Name="bootstrap" />
            <asp:ScriptReference Name="respond" />
            <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" />
            <%--Site Scripts--%>
        </Scripts>
    </asp:ScriptManager>
    
    <div class="container body-content">
        <asp:ContentPlaceHolder ID="cphMainWithoutUpdatePanel" runat="server"></asp:ContentPlaceHolder>
        <asp:UpdatePanel ID="updMain" runat="server">
            <ContentTemplate>
                <asp:ContentPlaceHolder ID="cphMain" runat="server"></asp:ContentPlaceHolder>
            </ContentTemplate>
        </asp:UpdatePanel>
    </div>
    

    我将jQuery声明为:
    <script src="//code.jquery.com/jquery-1.11.0.min.js" type="text/javascript"></script>
    

    web.config中对AJAX的唯一引用:
      <appSettings>
        <add key="webpages:Version" value="3.0.0.0" />
        <add key="webpages:Enabled" value="false" />
        <add key="PreserveLoginUrl" value="true" />
        <add key="ClientValidationEnabled" value="true" />
        <add key="UnobtrusiveJavaScriptEnabled" value="true" />
      </appSettings>
         <system.web>
            <authentication mode="None" />
            <compilation targetFramework="4.5" />
            <httpRuntime targetFramework="4.5" />
            <pages>
              <namespaces>
                <add namespace="System.Web.Helpers" />
                <add namespace="System.Web.Mvc" />
                <add namespace="System.Web.Mvc.Ajax" />
                <add namespace="System.Web.Mvc.Html" />
                <add namespace="System.Web.Optimization" />
                <add namespace="System.Web.Routing" />
                <add namespace="System.Web.WebPages" />
                <add namespace="Microsoft.AspNet.Identity" />
              </namespaces>
            </pages>
    

    除了更新面板外,我没有使用任何MS AJAX AFAIK。因此没有AjaxControlToolkit。我在页面中没有自定义的JS调用。

    因此,由于这一切都在本地工作,因此使我相信远程服务器上的某些内容有所不同。但是对于我的一生,我无法解决。有没有人有任何建议?

    确实需要使此事件生效,以便无论获得幸福多高的帮助或建议。

    最佳答案

    我最终解决了这个问题。就我而言,出现此问题是因为在更新面板中找到的代码/控件中还有其他一些低级异常。

    一旦纠正了上述错误,一切正常,Res错误就消失了。现在,如果我遇到诸如EF问题或类似问题之类的低级错误,该错误会再次出现。烦人,但至少我知道它是什么以及如何处理。

    关于asp.net - Sys.WebForms.Res未定义,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22435225/

    10-12 12:38