我从一个全新的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/