在asp.net中为新的Web程序员进行页面导航的提示

时间:2012-03-21 12:24:16

标签: c# asp.net web

我现在已经作为一名网络开发人员工作了两个星期并编写了我的第一页将其连接到数据库,所有内容都按照我想要的方式设置,现在是我的下一个大障碍。我想从另一个页面访问此页面。第二页模拟书面形式,第一页将包含提交表格的网格。透过网络我找到了Iframes,还有其他一些我还在阅读的选项,但我想在这里提出问题。什么是在asp.net中从一个页面导航到另一个页面的普遍接受/良好实践方法。从数据库到网络一直是一次旅行,但我喜欢它。

感谢您提出任何建议

4 个答案:

答案 0 :(得分:3)

的Response.Redirect( “Default1.aspx”):

  • 我们希望将请求重定向到我们服务器上的某些纯HTML页面或其他一些Web服务器
  • 我们不关心在每次请求时导致额外的往返服务器
  • 我们不需要保留原始请求中的查询字符串和表单变量
  • 我们希望我们的用户能够在浏览器中看到重定向的新重定向网址(如果需要,可以将其加入书签)

Server.Transfer(“Default1.aspx”):

  • 我们希望将当前页面请求转移到同一服务器上的另一个.aspx页面
  • 我们希望保留服务器资源并避免不必要的往返服务器
  • 我们希望保留查询字符串和表单变量(可选)
  • 我们不需要在用户Web浏览器中显示我们重定向请求的真实URL

答案 1 :(得分:2)

如果您只想重定向用户,可以使用Response.Redirect(url),这会将用户重定向到指定的相对页面。例如,如果您在Page1.aspx并希望重定向到Page2.aspx,则只需编写

Response.Redirect("~/Page2.aspx");

请记住,这是一种非常简单的重定向方法,从Page1到Page2提交的信息不会被持久化,因此您需要将这些信息保存在数据库中或会话中。

希望这会有所帮助。 :)

修改

进一步阅读你的问题;如果你想在Page1中选择它后加载一个表单,你会想以某种方式将它传递给Page2。最简单的方法是将它附加到查询字符串,然后检查Page2加载上是否存在查询字符串值。

答案 2 :(得分:2)

您可以使用

导航到其他页面
Response.Transfer("Default2.aspx");

否则你可以使用

Server.Transfer("Default.aspx")

但它也很笨重,因为它也传输了上一页的数据..

答案 3 :(得分:2)

Response.Redirect完成从一个页面导航到另一个页面的工作。下面是一篇很好的文章,解释了它的正确用法,希望这会有所帮助。

http://blogs.msdn.com/b/tmarq/archive/2009/06/25/correct-use-of-system-web-httpresponse-redirect.aspx