好吧,让我从更多的MVC人开始。我有一个结果集,我试图添加分页。我真正想要的是我的页面上的上一个和下一个按钮,它们是链接控件。我需要这些控件回发到同一页面,但有一个像页面= 4的查询parm。我如何添加这些链接?我在链接上看到PostBackUrl属性。我应该只使用Request.Url并将其填充到PostBackUrl中吗?然后我必须在parm上进行字符串搜索......它变得讨厌。这是唯一的方法吗?我曾尝试过ViewState,请不要暗示......就我而言,这是无法预测的垃圾。链接上的ASP.NET窗体参数
0
A
回答
0
PostBackUrl属性用于跨页面回发,你不想这样做。
如果您想使用POST,您可以使用LinkButton,处理单击事件并重新绑定结果集。像
public void BackButton_Click(object sender, EventArgs e)
{
// Get existing page from session, viewstate, etc
// RebindGrid
}
东西,如果你想使用一个GET,你可以用一个超链接,NavigateUrl属性设置为正确的网址。喜欢的东西
int page;
if(!int.TryParse(Request.QueryString["page"], out page))
page = 1;
if(page > 1)
BackUrl.NavigateUrl = Request.Path + "?page=" + (page-1).ToString();
else
NextUrl.NavigateUrl = Request.path + "?page=" + (page+1).ToString();
// Note: not syntax/bounds checked
编辑: 也许你正在寻找一个Post-Redirect-Get pattern?
Response.Redirect(HttpContext.Current.Request.Path + query, true);
0
你说的是ASP.NET Webforms或MVC?
如果你在谈论Webforms,我不认为你会在这方面取得成功。我相信您需要在使用Session或其他方式进行分页之间控制此移动,或者为每个页面重新绑定您的数据。
0
我最终做的事情是把隐藏在页面上,让我需要传回的变量,然后读取这些变量。这是像页码这样的东西,它允许我计算上一页和下一页。抱歉提交我自己的答案,但这有点奇怪,我想我会告诉我最终做了什么。
由于某种原因,查看状态每次都是空的,所以它对我没有好处。这是在一个DNN应用程序,我不想花时间搞清楚viewstate为什么搞砸了。
相关问题
- 1. 窗体标题上的链接
- 2. 从outlook链接打开窗体窗体?
- 3. ExtJS窗体:链接的Comboxes
- 4. Orbeon窗体 - 链接按钮
- 5. 泊坞窗链接体积
- 6. Rails窗体上的自定义参数
- 7. 将子窗体链接到主窗体上的组合框的问题
- 8. 链接上的语言参数
- 9. ms访问主窗体和子窗体之间的链接
- 10. 超链接或在DevExpress上的PivotGridField上的链接 - ASP.NET与C#
- 11. 防止通过窗体上的链接发送垃圾邮件
- 12. ASP.NET窗体上的Wacom签名
- 13. Laravel窗体动作参数
- 14. 使窗体传递参数
- 15. 单个FancyBox窗体与多个链接
- 16. Sitecore Web窗体下拉列表链接
- 17. 带参数的链接
- 18. SnakeMake中的链接参数
- 19. 从asp的弹出窗口:在c中的参数超链接#
- 20. 链接多参数函数
- 21. ASP.NET窗体:使用jquery发布到带有参数的asp.net页面方法
- 22. 生成与非参数的URL段路线链接上ASP.NET MVC 2
- 23. ASP.net Web窗体VS ASP.net AJAX
- 24. 在asp.net中带有参数的超链接弹出
- 25. 角2 RC5 routerlink链接参数数组编码实体
- 26. ASP.NET窗体名称
- 27. ASP.NET窗体授权
- 28. 访问子窗体链接到子窗体中的选择不会更新
- 29. 整体div上的链接颜色
- 30. VB.NET中的窗体RDLC报告参数
你想做这样的事吗? http://www.4guysfromrolla.com/articles/021308-1.aspx – Greg 2010-10-20 20:56:48
另外,你的字面意思是你需要一个POST还是你想获得? – Greg 2010-10-20 20:58:45
是的 - 如果您只是使用QS重定向到另一个URL,我在这里看不到需要POST。请求的所有信息都在QS中 - 只需使用HTTP GET的常规链接即可。 – RPM1984 2010-10-20 22:58:44