根据查询字符串显示完全不同的输出

5 asp.net query-string

我正在尝试学习asp.net(vb.net),我遇到了一些麻烦.我想根据查询字符串更改页面内容.

在经典的asp我会做:

<% If request.querystring("page") = 1 THEN %>
Run Code Online (Sandbox Code Playgroud)

- 整页 -

<% Else   %> 
Run Code Online (Sandbox Code Playgroud)

- 不同的页面 -

<% End If %>      
Run Code Online (Sandbox Code Playgroud)

我能进入的最近的网络是.net

Sub Page_Load(ByVal Sender as Object, ByVal E as EventArgs)  
        If Request.QueryString("page") = 1 Then  
            lblMessage1.Text = "message"  
        Else  
            lblMessage1.Text = "message2"  
        End If  
End Sub  
Run Code Online (Sandbox Code Playgroud)

这对小事来说似乎只是好事.更改整个页面的最佳方法是什么?

RSo*_*erg 6

您可以执行以下操作(简单重定向):

If Request.QueryString("page") = 1 Then
   Response.Redirect("MyPage1.aspx")
Else
   Response.Redirect("MyPage2.aspx")
End If
Run Code Online (Sandbox Code Playgroud)

你也可以这样做(在这里阅读更多):

If Request.QueryString("page") = 1 Then
   Server.Transfer("MyPage1.aspx")
Else
   Server.Transfer("MyPage2.aspx")
End If
Run Code Online (Sandbox Code Playgroud)

最后还有一个选项(在页面上显示/隐藏不同的面板):

If Request.QueryString("page") = 1 Then
   MyPanel1.Visible = true
   MyPanel2.Visible = false
Else
   MyPanel1.Visible = false
   MyPanel2.Visible = true
End If
Run Code Online (Sandbox Code Playgroud)