【发布时间】:2010-01-29 14:25:42
【问题描述】:
我在 ASP.NET 中使用 C#。
如何检查是否已将参数作为 POST 变量接收?
如果参数是通过 POST 或 GET 发送的,我需要执行不同的操作。
【问题讨论】:
我在 ASP.NET 中使用 C#。
如何检查是否已将参数作为 POST 变量接收?
如果参数是通过 POST 或 GET 发送的,我需要执行不同的操作。
【问题讨论】:
将此用于 GET 值:
Request.QueryString["key"]
这用于 POST 值
Request.Form["key"]
此外,如果您不关心它是来自 GET 还是 POST,还是来自 HttpContext.Items 集合,这将起作用:
Request["key"]
需要注意的另一件事(如果需要)是您可以使用以下命令检查请求的类型:
Request.RequestType
这将是用于访问页面的动词(通常是 GET 或 POST)。 Request.IsPostBack 通常会检查这一点,但前提是 POST 请求包含由 ASP.NET 框架添加到页面的隐藏字段。
【讨论】:
使用
Request.Form[]
对于 POST 变量,
Request.QueryString[]
对于 GET。
【讨论】:
除了使用Request.Form 和Request.QueryString 之外,根据您的具体情况,检查Page 的IsPostBack 属性也可能很有用。
if (Page.IsPostBack)
{
// HTTP Post
}
else
{
// HTTP Get
}
【讨论】: