为什么在部署我的ASP之后会发生这种情况?Net动态数据Web应用程序到测试服务器
本文关键字:数据 动态 Net Web 应用程序 服务器 测试 情况 ASP 我的 部署 | 更新日期: 2023-09-27 18:16:14
我今天第一次将我开发的web应用程序部署到我们的测试服务器上,并且由于一些奇怪的原因,insert上的"insert"超链接。Aspx页面模板无法正常工作。它不会抛出错误,我可以插入到远程托管SQL Server DB上的问题表中,如下所示:
protected void btInsert_Click(object sender, EventArgs e)
{
BedType bt = new BedType();
bt.Value = "Twin";
bt.MaxSpace = 1;
using (OEContext context = new OEContext())
{
context.BedTypes.Add(bt);
context.SaveChanges();
}
}
但是当尝试使用默认的insert插入时。在Aspx模板中,"insert"超链接不起作用("cancel"可以正常工作!)
Google-fu让我整个下午都失败了。
所以,在我绞尽脑汁之后,我终于找到了这个奇怪问题的答案,我想把它贴出来,以防其他人遇到同样的问题。
当我使用NuGet安装"AJAX工具包"时,我的应用程序停止编译,因为它没有找到脚本管理器正在寻找的"MsAjaxBundle"Web资源:
<asp:ScriptReference name="MsAjaxBundle" />
这段代码被添加到我的网站。主文件时,我添加了对ajax控件工具包的引用。因为它正在寻找那个包,但它不存在,我做了一点谷歌搜索,找到了网络资源,并在我的全局脚本管理器中注册了它。asax文件:
ScriptManager.ScriptResourceMapping.AddDefinition("MsAjaxBundle", new ScriptResourceDefinition
{
Path = "~/bundles/MsAjaxJs",
CdnPath = "http://ajax.aspnetcdn.com/ajax/4.5/6/MsAjaxBundle.js",
LoadSuccessExpression = "window.Sys",
CdnSupportsSecureConnection = true
});
编译并运行!但是,由于某种原因,应用程序正在抑制"WebForm_PostBackOptions未定义"错误。一旦我发现并开始挖掘,我就被带回到我的MsAjaxBundle,并最终意识到它就是罪魁祸首。我又搜索了一下,发现了这个页面:
http://stephenblog.wpengine.com/archive/2012/09/20/september - 2012 -释放- - - ajax控件工具包
指向ScriptManager中的一些更改:
1)我们需要用ajaxToolkit:ToolkitScriptManager替换asp:ScriptManager
2)我们需要从ScriptReferences 中删除MsAjaxBundle包3)我们需要移除Assembly="System"。Web"属性
我的问题解决了。如果有人比我有更多的知识和经验,可以在评论中解释为什么会发生这种情况,那么请随意!P