asp.net – 为什么Page.PreviousPage始终为null?
我正在尝试按照
this MSDN article进行跨页面发布.我有这样的代码:
CrossPagePosting1.aspx <form id="form1" runat="server"> <h1>Page 1</h1> <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox><br /> <asp:Button ID="Button1" runat="server" Text="Button" PostBackUrl="CrossPagePosting2.aspx"/> </form> CrossPagePosting2.aspx <form id="form1" runat="server"> <h1>Page 2</h1> <asp:Label ID="Label1" runat="server" Text=""></asp:Label> </form> CrossPagePosting2.aspx.cs protected void Page_Load(object sender,EventArgs e) { TextBox TextBox1 = (TextBox)Page.PreviousPage.FindControl("TextBox1"); Label1.Text = TextBox1.Text; } 上面的代码在Page.PreviousPage上产生NullReferenceException.为什么? 这是一个ASP.Net 4.0应用程序. 它使用FriendlyUrls,这是默认值. 注意:我不希望上一页是强类型的,例如使用PreviousPageType指令.根据引用的文章,这不应该是必要的. 解决方法
我发现友情URL可能会让你遇到这个问题.默认情况下,Web窗体模板包含ASP.NET友好URL.
使用Visual Studio中的默认WebForm时,AutoRedirectMode设置为Permanent.这使您请求进入“GET”,并且由于您使用的是友好URL,因此无法评估PreviousPage. 解决方法: >如果您想要“POST”操作,请设置AutoRedirectMode =RedirectMode.Off(这将为您提供PreviousPage信息,但仅限于非友好的网址[例如:www.you.com/mypage.aspx],不过这个如果您尝试访问Friendly-Url页面会出现错误[例如:www.you.com/mypage]<<没有.aspx).>如果您需要PreviousPage信息,则必须设置您网页中的上一篇文章指令<%@ PreviousPageTypeVirtualPath =“?/ Page1.aspx”%>或者也许在a中使用Server.TransferOnClick方法. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – Quartz.net和Ninject:如何使用NInject将实现绑
- asp.net-mvc – 为什么HtmlHelpers需要这个HtmlHelper帮助器
- macos – ASP.NET CORE 2.1预览“Csc”任务不支持“SharedC
- asp.net – 使用.Resx文件获取全局应用程序消息?
- asp.net中的GridView分页问题
- asp.net – 如何逃避在IE上生成“意外量词”错误的RegEx?
- asp.net-mvc – 为什么我的ViewModel在[HttpPost]上为空?
- 在ASP.NET MVC中模拟User.Identity
- .net – 使用FileStreamResult,MemoryStream是如何关闭的?
- asp.net – Visual Studio 2010:将网站项目转换为Web应用程
- ASP.NET MVC3 – 您如何处理探测请求?
- asp.net-mvc-3 – 如何验证HTML输入以防止XSS?
- asp.net-mvc – NHaml是否具有content_for布局能
- asp.net-mvc – 如何在mvc.net中实现安全认证和角
- asp.net – 登录后重定向到上一页
- asp.net – Visual Studio构建错误“路径中的非法
- asp.net-core – 带有ASP.NET身份3的JWT承载令牌
- asp.net-mvc – 基于MVC中应用程序的语言选择对必
- asp.net-mvc – 在应用程序池回收后,如何预热我的
- asp.net – 问题设置cookie到期DateTime.Max(999