这可以遍历所有Form键:
foreach (string s in Request.Form.Keys )
{
Response.Write(s.ToString() + ":" + Request.Form[s] + "<br>");
}
但是,我想遍历所有的请求键:
foreach (string s in Request )
{
Response.Write(s.ToString() + ":" + Request[s] + "<br>");
}
问题是request.keys不是集合。但很明显,请求对象有孩子,我想循环。我很确定这是可能的,我只是使用了错误的语法。
提前感谢!
答案 0 :(得分:22)
foreach (string s in Request.Params.Keys )
{
Response.Write(s.ToString() + ":" + Request.Params[s] + "<br>");
}
答案 1 :(得分:1)
标记是正确的,这将起作用,但它将返回cookie中的所有密钥,正在发送的表单中的密钥,以及查询字符串中的密钥和正在发送的其他密钥值对。我建议更具体一点。如果您收到Post对象,请使用
Dictionary<string, string> _properties;
foreach (string f in report.Form.Keys)
{
_properties.Add(f, report.Form[f]);
}
和获取页面使用
foreach(string s in report.QueryString.Keys)
{
_properties.Add(s,report.QueryString[s]);
}