【发布时间】:2013-02-28 18:09:25
【问题描述】:
上下文: 我有一个页面,我从另一个页面中的 gridview 中的链接导航到该页面。
这是当前页面的网址。
http://somedomain.com/timesheet.aspx?tskey=0&emplid=10068323&pnbr=10053911&pbdate=03182012&pedate=03312012&emprcd=0&scheduletype=BW
在此页面上,我进行了一些编辑并点击保存按钮。它被提交到数据库,为我生成 tskey 值。 tskey 是一个查询字符串变量。
现在我保存当前页面后有了 tskey 值,我可以更改当前页面的 url 以在保存点击事件结束时更新 tskey 值而不重定向。
【问题讨论】:
-
要完成什么?比如,如果你已经有了这个值,为什么还要把它塞进查询字符串?
-
这种情况下生成tskey后,如果用户碰巧重新加载了tskey=0作为查询字符串值的页面,会抛出异常。因此,请考虑是否可以在回发时更新 tskey 值,但不能通过重定向来更新。我不想使用重定向的原因是,在回发后,我收到一条关于保存的确认消息,但重定向不会发生。如果我的问题看起来不合逻辑,请纠正我...
-
听起来你真正的问题是“为什么用户刷新会导致异常”......修复它(比如可能在插入之前检查值是否存在)然后你就不需要kludgey解决方法.
-
你问的不是不合逻辑的。不希望用户重新发布表单是常见问题。只是你的方法不正确。您需要解决用户刷新导致异常的原因......您可以从查询字符串中删除
tskey=0开始(因为看起来您有一个查询字符串变量只是为了“不”有一个值)并从那里继续前进. -
没错,现在我意识到用户总是可以操纵查询字符串并重新加载。现在我在处理此类异常后修复了它。谢谢,迈克
标签: c# asp.net url query-string redirect