我有一个简单的表单,可以动态呈现数据输入表单,用户进行回发并将结果保存到数据库中。我创建了一个新版本的表单,并根据数据库上的一些信息,当用户请求旧表单的 URL 时,我想做一个 Server.Transfer 到新的 *.aspx 页面以生成页面和处理回发。由于页面的 URL 不会改变,这是否意味着回发被发送到原始页面?然后我是否需要检查它是否是回发,如果是,则调用 Server.Transfer 并允许将表单数据传输到新页面?
问问题
3424 次
2 回答
5
这取决于您所说的“获取”回发的含义。当然,第一页将获得发布的表单值,因为它们是从客户端发送的。但是,第一页对回发信息做出反应的程度取决于您在生命周期中何时启动 Server.Transfer。如果它在生命周期中非常晚(如点击处理程序),那么第一页将几乎经历了整个回发过程。
在 Server.Transfer中保留表单值的可选参数指示第二页是否也对请求做出反应,就好像它是回发一样。
于 2010-02-10T14:36:47.130 回答
1
看一下 Server.Transfer 之后页面的 HTML 源代码。如果表单的操作是新的 ASPX,那么你就可以了。
使用常规重定向可能会更容易。这样你就没有这些问题了。
于 2010-02-10T14:40:05.717 回答