使用 Razor 语法在 2 个网页之间传递值





0/5 (0投票)
以下示例演示如何使用 Request QueryString 在两个 CSHTML 页面之间传递值。我们有 2 个网页,Page.cshtml
以下示例演示如何使用 Request QueryString 在两个 CSHTML 页面之间传递值。
我们有 2 个网页,分别是 Page.cshtml 和 Page2.cshtml。在 Page.cshtml 中,将有一个文本框和一个按钮,无论用户在文本框中输入什么,都将传递到 Page2.cshtml。
这是 Page.cshtml 上的代码。我们使用 Request.Form 捕获用户从文本框输入的内容。然后,该值存储在变量“formValue”中,该变量将通过 Response.Redirect 传递到 Name 下。
@{
var formValue = Request.Form["myTextBox"];
if (IsPost)
{
Response.Redirect("Page2.cshtml?name=" + formValue);
}
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>Page 1</title>
</head>
<body>
<form action="" method="post">
<input type="text" id="myTextBox" name="myTextBox"/>
<input type="submit" value="submit"/>
</form>
</body>
</html>
这是 Page2.cshtml 上的代码,请注意之前的代码 Response.Redirect("Page2.cshtml?name=" + formValue); 我们实际上是将值传递给名为“NAME”的变量。因此,在 Page2.cshtml 中,我们将捕获 NAME 下的值。我们使用 Request.QueryString 从 URL 中捕获值,该 URL 将是 https:///page2.cshtml?name=WHATEVERUSERINPUT。
@{ var queryValue = Request.QueryString["name"]; } <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8" /> <title>Page 2</title> </head> <body> @queryValue </body> </html>
对于此示例,queryValue 将返回 "WHATEVERUSERINPUT" 的值。
祝您编码愉快。