我有一个 ASP.Net 表单 (Page1),用户在其中输入一些数据,然后单击提交按钮。
作为 Page1 的一部分,我有一些验证器,包括一个需要在服务器上进行验证的 CustomValidator。
当用户单击提交按钮时,将向 Page1 发布一个帖子,并且在服务器上运行验证例程,只要我在按钮单击例程中检查 Page.IsValid,表单就会知道事情是否已经通过。
当验证没有通过时,一切都正确返回到 Form1 并显示错误消息。
当表单通过验证时,我想将用户输入的数据传递给第二个表单(Page2),以便可以根据用户在 Page1 上输入的数据正确呈现 Page2。
是否有一种普遍接受的方式或最佳方式将数据传递给 Page2?以下是我知道的一些方法:
- 使用查询字符串调用 Page2:这不起作用,因为在某些情况下我需要数据对用户不可见。
- 使用提交按钮上的 PostBackUrl 转到 Page2:据我所知,这将无法正常工作,因为 Page1 的服务器端验证例程将不会运行。
- 使用会话变量:我不知道这会不好的特定原因。
- 使用 Server.Transfer:我对此没有任何经验。
我认为这将是一件非常标准的事情,但我很难找到有关正确方法的任何信息。